チェーンコードの問合せ

post

/restproxy/api/v2/channels/{channelName}/chaincode-queries

チェーンコードを問い合せます。このエンドポイントは、チャネルにすでにインストールされてインスタンス化されているチェーンコード・アプリケーションでサポートされている問合せ関数を呼び出すために使用されます。

リクエスト

サポートされるメディア・タイプ
パス・パラメータ
本文()
チェーンコードの問合せリクエスト
ルート・スキーマ: schema
型: object
ソースの表示
ネストしたスキーマ: args
型: array
チェーンコードに対する引数
ソースの表示
ネストしたスキーマ: transientMap
型: object
使用可能なその他のプロパティ
ソースの表示
チェーンコードのtransientMap
先頭に戻る

レスポンス

サポートされるメディア・タイプ

200レスポンス

操作の成功
本文()
ルート・スキーマ: schema
型: object
ソースの表示
ネストしたスキーマ: result
型: object
ソースの表示

400レスポンス

不正なリクエスト

401レスポンス

未認可

403レスポンス

禁止されています

404レスポンス

無効なパラメータ

500レスポンス

サービス使用不可
先頭に戻る

このエンドポイントは、チャネルにすでにインストールされてインスタンス化されているチェーンコード・アプリケーションでサポートされる関数を呼び出すために使用されます。

ノート:

このエンドポイントを使用して、元帳の値を変更する機能を呼び出すことはできません。

次の例は、cURLを使用してRESTリソースに対するGETリクエストを発行し、チェーンコード問合せ関数を呼び出す方法を示しています。

curl -v -u <username>:<password> -X POST \
  "https://<restproxy of your Blockchain instance>/api/v2/channels/<channel_name>/chaincode-queries" \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data @<JSON file with the request parameters>

たとえば、

curl -v -u <username>:<password> -X POST \
  "https://myvm.oracle.com:10001/restproxy/api/v2/channels/default/chaincode-queries" \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data @file.json
file.jsonの内容は次のとおりです。
{
  "chaincode": "obcs-example02",
  "args":["query","b"],
  "timeout": 18000,
  "peer": "myvm.oracle.com:10036"
}
説明:
  • chaincodeは、Balance Transferサンプル・チェーンコードのチェーンコードIDです。
  • argsは、呼び出すチェーンコード問合せ関数とそのパラメータを指定します。
  • timeoutは、トランザクションがタイムアウトするまでの最大ミリ秒を指定します。
  • peerは、このトランザクションのピア・ノードを示します。

ノート:

ブロックチェーン・インスタンスのRESTプロキシ値は、インスタンス・コンソールの「ノード」タブから確認できます。

レスポンス本文の例

JSON形式のレスポンス本文のコンテンツの例を次に示します。

{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": 2200,
        "encode": "JSON"
    }
}

この場合、payloadに返される値(2200)は、リクエストで指定されたチェーンコード問合せ関数によって返される結果です。

先頭に戻る