API 게이트웨이
Oracle Blockchain Platform Digital Assets Edition은 API 게이트웨이 서비스를 사용하여 Blockchain App Builder에서 생성된 래퍼 API를 배포합니다.
래퍼 API 엔드포인트는 OCI(Oracle Cloud Infrastructure)의 리소스 관리자 스택을 사용하여 API 게이트웨이에 게시됩니다. 스택은 사전 정의되고 반복 가능한 방식으로 클라우드 리소스 그룹을 배치 및 관리하여 인프라 프로비저닝의 통합관리 및 자동화를 간소화합니다. OCI API 게이트웨이 서비스를 사용하면 네트워크 내에서 액세스할 수 있는 프라이빗 끝점이 있는 API를 게시할 수 있으며, 인터넷 트래픽을 허용하려는 경우 퍼블릭 IP 주소로 API를 노출할 수 있습니다.
Oracle Blockchain Platform REST API 엔드포인트는 API를 호출할 때마다 체인코드 이름, 시간 초과 및 동기화 값, 메소드 이름 등의 인수 등의 매개변수를 전달해야 합니다. 매개변수가 모든 메소드에 공통되는 시나리오에서는 래퍼 API를 사용하여 메소드 인수만 사용하여 API를 호출할 수 있습니다. 각 체인코드 메소드에는 고유한 래퍼 API 끝점이 있습니다. 경우에 따라 서로 다른 체인코드 및 Oracle Identity Cloud Service 엔드포인트의 여러 REST API 엔드포인트를 병합하여 단일 래퍼 API 엔드포인트를 구성할 수 있습니다.
다음 예에서는 Oracle Blockchain Platform을 사용하여 associateTokenToAccount
메소드를 호출하는 방법을 보여 줍니다.
https://<blockchain_instance>:7443/restproxy/api/v2/channels/default/transactions
{
"chaincode": "{{bc-chaincode-name}}",
"args": [
"associateTokenToAccount",
"oaccount~78b47483e4033a0c6be3b678080264e7967d53f56d4b024edd96eb8957c452d4",
"t2"
],
"timeout": {{bc-timeout}},
"sync": {{bc-sync}}
}
Oracle Blockchain Platform Digital Assets Edition에서 지원되는 래퍼 API를 사용하면 동일한 호출이 다음 예와 같이 표시됩니다.
https://<blockchain_instance>/appbuilder/associate
{
"accountId":"oaccount~efc22a0316a47dd06679920140717b686c7366a627a707c5e8c89015bb21796a",
"tokenId":"t1"
}
API 게이트웨이는 래퍼 API 배치에 설명된 대로 래퍼 API를 배치할 때 스택 배치의 일부로 구성됩니다.