使用區塊鏈節點

本頁說明如何準備使用 API 金鑰進行驗證,以便查詢 Blockchain Node Engine 節點。

使用區塊鏈節點前,請先完成下列事項:

建立 API 金鑰

您必須使用 API 金鑰進行驗證,才能查詢節點。

如要在 Google Cloud 控制台中產生金鑰,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中,前往「APIs & Services, Credentials」(API 和服務憑證) 頁面。

    前往「憑證」

  2. 按一下 [Create credentials] (建立憑證)

  3. 按一下「API 金鑰」

  4. 在「建立的 API 金鑰」(API key created) 對話方塊中,按一下 「複製」以複製金鑰,然後貼到暫時檔案中。您需要「查詢區塊鏈節點」中的 API 金鑰。

如要進一步瞭解 API 金鑰,請參閱「使用 API 金鑰進行驗證」一文。

取得區塊鏈節點端點網址

您可以使用控制台或傳送 API 要求,取得區塊鏈節點網址:

使用主控台

如要在 UI 中查看節點的詳細資料:

  1. 在 Google Cloud 控制台中,前往「Blockchain Node Engine」頁面。

    前往 Blockchain Node Engine

  2. 系統預設會顯示「節點」清單頁面。

  3. 按一下節點名稱,系統隨即會顯示「節點詳細資料」頁面。
    區塊鏈節點網址會顯示在「端點」區域。

使用 API

如要使用 ListBlockchainNodes 列出區塊鏈節點的相關詳細資料,請傳送下列要求:

curl \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
https://blockchainnodeengine.googleapis.com/v1/projects/PROJECT_ID/\
locations/LOCATION/blockchainNodes/NODE_NAME

其中:

  • PROJECT_ID 是您的 Google Cloud 專案 ID。 例如:my-project-id
  • LOCATION 是您在「建立區塊鏈節點」中選取的位置。例如:us-central1
  • NODE_NAME 是您在「建立區塊鏈節點」中建立的節點名稱。例如:my-node

啟用 Private Service Connect 的節點

注意:本節僅適用於 Private Service Connect 節點。所有其他節點都可以繼續前往下一個部分

啟用 Private Service Connect 的節點會傳回 serviceAttachment,如下列乙太坊範例所示:

{
  "name": "projects/cloud-web3/locations/us-central1/blockchainNodes/my-node",
  "createTime": "2023-12-08T15:06:43.538015Z",
  "updateTime": "2023-12-08T15:23:53.016239Z",
  "blockchainType": "ETHEREUM",
  "connectionInfo": {
    "serviceAttachment": "projects/associated-project/regions/us-central1/serviceAttachments/associated-service-attachment"
  },
  "ethereumDetails": {
    "network": "MAINNET",
    "nodeType": "ARCHIVE",
    "executionClient": "ERIGON",
    "consensusClient": "LIGHTHOUSE",
    "apiEnableAdmin": false,
    "apiEnableDebug": false
  },
  "state": "RUNNING",
  "pscOnly": true
}

如要使用節點,請完成 Private Service Connect 設定。然後使用 Private Service Connect 靜態 IP 位址和所選互動的指定通訊埠,建構端點,取代標準 DNS 端點。

通訊埠編號參考資料:

具有公開端點的節點

傳回的區塊鏈網址位於 endpointInfoadditionalEndpoints 區段,如下列乙太坊範例所示:

{
  "name": "projects/my-project-id/locations/us-central1/blockchainNodes/my-node",
  "createTime": "2023-05-05T04:24:12.432769Z",
  "updateTime": "2023-05-05T05:03:02.561240Z",
  "labels": {
    "my-label-key": "my-label-value"
  },
  "blockchainType": "ETHEREUM",
  "connectionInfo": {
    "ipInfo": {
      "rpcIpv4Address": "192.0.2.1"
    },
    "endpointInfo": {
      "jsonRpcApiEndpoint": "json-rpc.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com",
      "websocketsApiEndpoint": "ws.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com"
    }
  },
  "ethereumDetails": {
    "network": "MAINNET",
    "nodeType": "FULL",
    "executionClient": "GETH",
    "consensusClient": "LIGHTHOUSE",
    "apiEnableAdmin": false,
    "apiEnableDebug": false,
    "additionalEndpoints": {
      "beaconApiEndpoint": "beacon.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com",
      "beaconPrometheusMetricsApiEndpoint": "bc-mc.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com"
    }
  },
  "state": "RUNNING"
}

另請參閱:查看區塊鏈節點詳細資料、使用 API

查詢區塊鏈節點

現在您已取得 API 金鑰和區塊鏈節點端點網址,如需使用說明,請參閱各區塊鏈的相關主題: