Composants de package d'API de wrapper
Les packages d'API de wrapper contiennent un fichier d'archive des API de wrapper, un script Terraform pour le déploiement et une collection Postman correspondante.
- Le fichier d'archive d'API de wrapper est nommé
<ChaincodeName>WrapperAPI.zip
. Il contient également un script Terraform qui doit être déployé sur la ressource de pile. - Le fichier de collecte Postman est nommé
<ChaincodeName>_WrapperAPI.postman_collection.json
. Vous pouvez utiliser cette collection pour appeler toutes les API de wrapper.
Package API wrapper
Le package d'API de wrapper contient un script Terraform qui provisionne toutes les ressources Oracle Cloud Infrastructure (OCI) nécessaires à la création des API de wrapper. Des fichiers de support Terraform supplémentaires et un dossier Oracle Functions sont disponibles pour chaque API. Les packages d'API de wrapper créent les ressources OCI suivantes.
- Réseau cloud virtuel (VCN) : établit l'infrastructure réseau pour la communication.
- Applications (Oracle Functions) : déploie des fonctions sans serveur pour gérer la logique d'API.
- API Gateway : crée la passerelle pour gérer et acheminer les demandes d'API.
- Déploiement d'API : configure et déploie les API sur API Gateway.
- Stratégie de déploiement d'API : configure les stratégies IAM nécessaires pour activer l'accès sécurisé.
- OCI Registry : fournit un registre de conteneurs pour la gestion des images Docker.
terraform.tfvars
avec des adresses et des noms de ressource mis à jour. Modifiez la variable function_paths
dans le fichier terraform.tfvars
pour mettre à jour une adresse. La variable function_paths
est un objet JSON où la clé est le nom de l'API et la valeur est un autre objet JSON avec les deux clés suivantes :
path
: définit l'adresse pour l'APItype
: indique le type de demande (POST ou GET).
function_paths
.function_paths="{\"activateAccount\":{\"path\":\"/activateAccount\",\"type\":[\"POST\"]}}"
Collection Postman
{
"orgId": "{{bc-org-id}}",
"userId": "user1",
"tokenType": "fungible",
"applicationGroups": "[\"application_groups value\"]",
"dailyLimits": "{\"max_daily_amount\":10000,\"max_daily_transactions\":100}",
"endorsers": {{endorsers}}
}
Variable | Description | Valeur par défaut |
---|---|---|
bc-admin-user |
L'administrateur, qui dispose du rôle d'administrateur auquel il a accès à toutes les demandes POST. Par défaut, cet utilisateur est l'appelant de toutes les demandes POST dans le code chaîne. | valeur bc-admin-user |
bc-admin-user-password |
Mot de passe de l'administrateur. | valeur bc-admin-user-password |
bc-org-id |
ID d'organisation par défaut dans toutes les demandes POST où orgId est le nom du paramètre
|
valeur bc-org-id |
bc-user-id |
ID utilisateur par défaut dans toutes les demandes POST où userId est le nom du paramètre
|
valeur bc-user-id |
bc-token-id |
ID de jeton par défaut dans toutes les demandes POST où tokenId est le nom du paramètre
|
valeur bc-token-id |
endorsers |
Le tableau des approbateurs répertorie les homologues spécifiques (par exemple : peer1, peer2) pour approuver cette transaction. | ["org1-xyz-abc.blockchain.ocp.oraclecloud.com :20009", "org2-xyz-abc.blockchain.ocp.oraclecloud.com :20009"] |
api-gateway-endpoint |
Adresse de chaque demande, qui sert de chemin de base pour les adresses d'API de wrapper.
S'il existe moins de 50 API, une seule adresse est utilisée. S'il existe plus de 50 API, les adresses sont générées dynamiquement en tant qu'API-gateway-endpoint1, api-gateway-endpoint2, etc., en fonction du nombre d'API. |
https://xyz.apigateway.region.oci.customer-oci.com/CBDC |
peer |
Cette variable existe uniquement pour la collection Postman de l'API d'enveloppeur de code chaîne confidentiel, qui nécessite l'en-tête homologue pour toutes les API de setter. | org-xyz-abc.blockchain.ocp.oraclecloud.com :20009 |
Une fois le package d'API de wrapper déployé, la sortie du déploiement de ressource de pile est un objet JSON contenant les valeurs d'adresse de passerelle. Si vous générez plus de 50 API, plusieurs adresses de passerelle sont générées, une pour 50 API. Vous devez mettre à jour les variables de collection Postman associées à ces adresses. Les variables liées aux adresses de la collection Postman doivent être mises à jour avec les valeurs appropriées provenant de la sortie du déploiement du package d'API wrapper dans Stack Resource Manager.
endorsers
ou sameOrgEndorser
dans la charge utile de demande. Les informations qui spécifient les API nécessitant le paramètre sameOrgEndorser
sont définies dans le paramètre sameOrgEndorserOptionInWrapperAPI
du fichier .ochain.json
dans le code chaîne. sameOrgEndorser
sera défini sur True dans la charge utile des API répertoriées dans ce paramètre. Toutes les autres API set incluront le paramètre endorsers
à la place. L'exemple suivant montre le paramètre du code chaîne CBDC de gros."sameOrgEndorserOptionInWrapperAPI": ["addConversionRate","addTokenAdmin","addTokenAuditor","approveBurn","approveMint","burnTokens","createExchangePoolAccounts","deleteHistoricalTransactions","initializeCBDCToken","initializeExchangePoolUser","mintWithFundingExchangePool","rejectBurn","rejectMint","removeTokenAdmin","removeTokenAuditor","requestBurn","requestMint","updateCBDCToken","updateConversionRate"]
Vous pouvez personnaliser le paramètre sameOrgEndorserOptionInWrapperAPI
dans le fichier .ochain.json
selon vos besoins. Lorsque vous générez des API de wrapper, les API indiquées incluent ensuite le paramètre sameOrgEndorser
en tant que true
dans leurs charges utiles.