Liberty REST API 업데이트에 등록
Liberty REST API 발견 기능은 이제 사용 가능한 새 API 또는 제거되는 이전 API 등의 사용자가 REST API 업데이트에 등록할 수 있게 하는 새 REST API(/ibm/api/docs/subscription)를 공개합니다. 이는 사용자가 특정 Liberty 인스턴스가 제공하는 엔드포인트의 변경사항에 대한 즉각적인 알림 수신을 원하는 경우에 유용합니다.
등록 사용
기본 apiDiscovery-1.0 구성 외에도 server.xml에서 websocket-1.0 또는 websocket-1.1을 구성해야 합니다.
<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>
/ibm/api/docs/subscription 엔드포인트는 다음 형식의 JSON 페이로드를 사용하여 POST 요청을 허용합니다.
{ "docType" : String }
여기서 String은 Swagger_20_JSON과 Swagger_20_YAML 중 하나입니다. 리턴되는 JSON 페이로드는 등록 피드의 유형 및 해당 URL에 대한 개요를 제공합니다.
예제 요청 및 해당 응답
요청:
{"docType":"Swagger_20_JSON"}
응답:
{
"feedType": "websocket",
"feedURL": "wss://myserver.com:8020/ibm/api/docs/subscription/websocket/60db0d79-1863-48f5-a0f9-4fe22a27b82d"
}
이제 websocket 클라이언트를 사용하여 피드 URL에 연결할 수 있습니다. 일단 연결되면 Liberty 서버에서 REST API에 대한 추가 업데이트가 websocket을 통해 푸시됩니다. 등록에 따라 이 업데이트의 형식은 JSON 또는 YAML입니다.