Utilice la API de suscripción en el controlador colectivo para conocer inmediatamente las
nuevas API REST, las API eliminadas o los cambios en las API, por ejemplo cambios en los puntos finales
de un servidor de miembros de colectivo específico.
Antes de empezar
La API /ibm/api/collective/docs/subscription
está en la característica de descubrimiento de la API REST de Liberty. Para suscribirse a las actualizaciones de las API REST desde servidores miembro de colectivo, primero
debe completar el procedimiento en Descubrimiento de la documentación de la API REST en un servidor Liberty para un
controlador colectivo.
Procedimiento
- Habilite las suscripciones.
Añada la característica websocket-1.0 o websocket-1.1
al archivo server.xml controlador colectivo; por ejemplo:
<server>
<featureManager>
<feature>collectiveController-1.0</feature>
<feature>apiDiscovery-1.0</feature>
<feature>websocket-1.1</feature>
</featureManager>
<!-- se omiten algunas configuraciones de controlador
colectivo -->
<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/collective/docs/subscription permite solicitudes POST
con una carga útil JSON con el formato siguiente:
{ "docType" : Serie }
Serie es 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.
Por ejemplo, la siguiente solicitud:
{"docType":"Swagger_20_JSON"}
devuelve una respuesta como:
{
"feedType": "websocket",
"feedURL": "wss://myserver.com:8020/ibm/api/collective/docs/subscription/websocket/60db0d79-1863-48f5-a0f9-4fe22a27b82d"
}
- Utilice un cliente websocket para conectarse al URL de canal de información.
Puede escribir código o utilizar un cliente websocket de terceros para conectarse al URL de canal de información.
Una vez conectado, las posibles actualizaciones a las
API REST en el servidor Liberty se
envían a través del websocket.
La actualización está en formato JSON o YAML, dependiendo
de la suscripción.