Passerelle d'API
Oracle Blockchain Platform Digital Assets Edition utilise le service de passerelle d'API pour déployer les API d'encapsulation générées par Blockchain App Builder.
Les points d'extrémité d'API Wrapper sont publiés sur la passerelle d'API à l'aide d'une pile du gestionnaire de ressources sur Oracle Cloud Infrastructure (OCI). Les piles déploient et gèrent des groupes de ressources en nuage d'une manière prédéfinie et reproductible, ce qui peut simplifier l'orchestration et l'automatisation du provisionnement de l'infrastructure. Le service de passerelle d'API OCI vous permet de publier des API avec des points d'extrémité privés qui sont accessibles depuis votre réseau, mais que vous pouvez exposer avec des adresses IP publiques si vous souhaitez qu'elles acceptent le trafic Internet.
Les points d'extrémité d'API REST d'Oracle Blockchain Platform nécessitent la transmission de paramètres tels que le nom du code de chaîne, les valeurs de temporisation et de synchronisation, ainsi que d'arguments, notamment le nom de la méthode chaque fois que vous appelez l'API. Dans les scénarios où les paramètres sont communs à toutes les méthodes, vous pouvez utiliser des API wrapper pour appeler l'API en utilisant uniquement les arguments de méthode. Chaque méthode de chaîne de code aura un point d'extrémité d'API d'encapsuleur distinct. Dans certains cas, il est possible de fusionner plusieurs points d'extrémité d'API REST de différents codes de chaîne ainsi que des points d'extrémité d'Oracle Identity Cloud Service pour former un seul point d'extrémité d'API d'encapsuleur.
L'exemple suivant montre comment appeler la méthode associateTokenToAccount
avec Oracle Blockchain Platform.
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}}
}
Avec les API wrapper prises en charge par Oracle Blockchain Platform Digital Assets Edition, le même appel ressemble à l'exemple suivant :
https://<blockchain_instance>/appbuilder/associate
{
"accountId":"oaccount~efc22a0316a47dd06679920140717b686c7366a627a707c5e8c89015bb21796a",
"tokenId":"t1"
}
Le service de passerelle d'API est configuré dans le cadre d'un déploiement de pile lorsque vous déployez vos API d'encapsuleur, comme décrit dans Déployer les API d'encapsuleur.