包装器 API
增强版的区块链应用程序构建器可以生成 API 网关的包装 API,它支持每个链代码方法的专用端点。
包装器 API 是 Oracle Blockchain Platform 端点上的抽象层。包装器 API 支持配置通用参数和特定于 API 的端点名称,从而简化使用和清晰度。
在 Oracle Blockchain Platform 的基本版本中,API 端点需要包含链代码名称、超时和同步值、参数(包括方法名称)、通道名称和实例 URL 的参数。必须在每次调用时传递这些参数。由于这些参数中的大多数是所有方法通用的,因此您可以使用包装器 API 功能为每个方法创建一个端点,然后仅使用方法参数调用该端点。您可以为每个方法设置定制端点名称,而不是公用端点(事务处理或查询)。Oracle Blockchain Platform 中的 API 端点使用 POST 请求,而包装器 API 同时支持 POST 和 GET 请求。您还可以使用 API 网关验证机制,通过包装 API 添加额外的验证层。
以下示例显示了 Oracle Blockchain Platform 中的 createAccount 方法 API。
端点:https://blockchain.example.com:7443/restproxy/api/v2/channels/default/transactions
{
"chaincode": "{{bc-chaincode-name}}",
"args": [
"createAccount",
"{{bc-org-id}}",
"{{bc-user-id}}",
"fungible",
"{\"max_daily_amount\":10000,\"max_daily_transactions\":100}"
],
"timeout": {{bc-timeout}},
"sync": {{bc-sync}}
}
如果配置包装器 API,则可以执行与以下示例中所示相同的方法调用。
端点:https://apigateway.example.com/appbuilder/createAccount
{
"orgId": "{{bc-org-id}}",
"userId": "user1",
"tokenType": "fungible",
"dailyLimits": "{\"max_daily_amount\":10000,\"max_daily_transactions\":100}",
}