クイックスタート: Blockchain RPC

必要なロール

API キーを表示するために必要な権限を取得するには、プロジェクトに対する API キー閲覧者 roles/serviceusage.apiKeysViewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

RPC エンドポイントの使用

  1. Google Cloud コンソールで、[Blockchain RPC] ページに移動します。

    Go Blockchain RPC

  2. コンソールで、必要な networklocation の組み合わせに一致する JSON-RPC エンドポイントをコピーします。

    Blockchain RPC クイックスタート

  3. これでリクエストを送信できるようになりました。使用可能なすべての RPC メソッドの一覧は、RPC API リファレンス ドキュメントに記載されています。このリクエスト例では、eth_blockNumber メソッドを呼び出します。

curl -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method":
  "eth_blockNumber",
  "params": []}' \
JSON_RPC_ENDPOINT

ここで

  • JSON_RPC_ENDPOINT は、コンソールからコピーしたエンドポイントです。このエンドポイントには、自動的に作成されたデフォルトの API キーが含まれています。すべてのキーは、[認証情報] ページで管理できます。

この curl リクエストを実行すると、次のようなレスポンスが表示されます。

{"jsonrpc":"2.0","id":1,"result":"0x13acb8d"}

WebSocket サブスクリプションの使用

WebSocket のサポートは、Blockchain RPC エンドポイントでも有効になっています。この例では、wscat オープンソース プロジェクトを使用します。

  1. Google Cloud コンソールで、[Blockchain RPC] ページに移動します。

    Go Blockchain RPC

  2. コンソールで、必要な networklocation の組み合わせに一致する WebSocket エンドポイントをコピーします。

    Blockchain RPC クイックスタート

  3. これでリクエストを送信できるようになりました。

wscat -c WS_ENDPOINT

ここで

  • WS_ENDPOINT は、コンソールの WebSocket エンドポイントです。

新しいブロック ヘッダーをサブスクライブします。

{"id":1,"jsonrpc":"2.0","method":"eth_subscribe","params":["newHeads"]}

新しいブロック ヘッダーごとにメッセージを受信し始めます。