本页介绍了如何准备好使用 API 密钥进行身份验证以查询 Blockchain Node Engine 节点。
在使用区块链节点之前,您需要:
创建 API 密钥
您必须使用 API 密钥进行身份验证,才能查询节点。
如需在 Google Cloud 控制台中生成密钥,请执行以下操作:
在 Google Cloud 控制台中,前往 API 和服务、凭据页面。
点击创建凭据。
点击 API 密钥。
在已创建的 API 密钥对话框中,点击 查询区块链节点中的 API 密钥。
Copy 复制该密钥,然后将其粘贴到临时文件中。您需要
如需详细了解 API 密钥,请参阅使用 API 密钥进行身份验证。
获取区块链节点端点网址
使用控制台
如需在界面中查看节点的详细信息,请执行以下操作:
在 Google Cloud 控制台中,前往 Blockchain Node Engine 页面。
点击某个节点名称。系统随即会显示节点详情页面。
区块链节点网址会显示在端点区域。
默认情况下,系统会显示节点列表页面。
使用 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 的节点将返回 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 端点。
有关端口号参考信息:
- 以太坊:请参阅 Private Service Connect 以太坊端口指南
具有公共端点的节点
返回的区块链网址位于 endpointInfo
和 additionalEndpoints
部分,如以下以以太坊为例的示例所示:
{
"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 密钥和区块链节点端点网址。如需了解使用说明,请参阅适用于每个区块链的主题:
- 以太坊:请参阅使用以太坊区块链节点