Suscribirse a las actualizaciones de API REST de Liberty
Ahora la característica de descubrimiento de API REST de Liberty expone una nueva API REST, /ibm/api/docs/subscription, que permite a los usuarios suscribirse a cualquier actualización de API REST, por ejemplo las API nuevas que están disponibles o las API antiguas que se eliminan. Esto es útil cuando un usuario desea que se le notifique inmediatamente cualquier cambio en los puntos finales proporcionados por una instancia Liberty concreta.
Habilitar suscripciones
Además de la configuración de apiDiscovery-1.0 base, es necesario configurar también websocket-1.0 o websocket-1.1 en server.xml.
<server>
<featureManager>
<feature>apiDiscovery-1.0</feature>
<feature>websocket-1.1</feature>
</featureManager>
<httpEndpoint id="defaultHttpEndpoint"
host="*"
httpPort="8010"
httpsPort="8020"/>
<keyStore id="defaultKeyStore" password="Liberty"/>
<basicRegistry id="basic" realm="ibm/api">
<user name="bob" password="bobpwd" />
</basicRegistry>
</server>
El punto final /ibm/api/docs/subscription permite solicitudes POST con una carga útil JSON con el formato:
{ "docType" : Serie }
Donde Serie puede ser uno de Swagger_20_JSON o Swagger_20_YAML. La carga útil de JSON de devolución describe el tipo de canal de información de suscripción y su URL.
Ejemplo de solicitud y respuesta correspondiente
{"docType":"Swagger_20_JSON"}
{
"feedType": "websocket",
"feedURL": "wss://myserver.com:8020/ibm/api/docs/subscription/websocket/60db0d79-1863-48f5-a0f9-4fe22a27b82d"
}
Ahora puede utilizar un cliente websocket para conectarse al URL de canal de información. Una vez conectado, las actualizaciones adicionales a las API REST en el servidor Liberty se envían a través de websocket. La actualización está en formato JSON o YAML, dependiendo de la suscripción.