Passerelle d'API
Oracle Blockchain Platform Digital Assets Edition utilise le service API Gateway pour déployer des API de wrapper générées par Blockchain App Builder.
Les adresses d'API de wrapper sont publiées sur API Gateway à l'aide d'une pile Resource Manager sur Oracle Cloud Infrastructure (OCI). Les piles déploient et gèrent des groupes de ressources cloud de manière prédéfinie et reproductible, ce qui peut simplifier l'orchestration et l'automatisation du provisionnement de l'infrastructure. Le service OCI API Gateway vous permet de publier des API avec des adresses privées accessibles à partir de votre réseau. Si vous voulez qu'elles acceptent le trafic Internet, vous pouvez les exposer avec des adresses IP publiques.
Les adresses d'API REST Oracle Blockchain Platform vous obligent à transmettre des paramètres tels que le nom de code chaîne, les valeurs d'expiration et de synchronisation, ainsi que des arguments, y compris le nom de 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 de wrapper pour appeler l'API en utilisant uniquement les arguments de méthode. Chaque méthode de code chaîne possède une adresse d'API de wrapper distincte. Dans certains cas, vous pouvez fusionner plusieurs adresses d'API REST à partir de différents codes chaîne et d'adresses Oracle Identity Cloud Service pour former une adresse d'API de wrapper unique.
L'exemple suivant illustre l'appel de 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 de 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"
}
API Gateway est configuré dans le cadre d'un déploiement de pile lorsque vous déployez vos API de wrapper, comme décrit dans Déploiement d'API de wrapper.