正式上市前 (階段):2026-02-26

6 RPC 代理主機

RPC 代理伺服器是用戶端應用程式的主要介面。它會將要求轉送至設定的上游節點端點。

RPC 代理主機為 Ethereum JSON-RPC 要求提供經過認證和授權的存取層。它也提供特殊功能,可用於簽署交易、執行查詢和管理公事包。

認證

保護的端點在授權標頭中需有 Bearer 權杖:
Authorization: Bearer <access_token>
代理主機會根據部署組態 (例如簽章驗證、到期、發照者和受眾) 驗證權杖。

您可以使用下列命令,使用區塊鏈平台管理程式中可用的存取權杖端點產生 Bearer 權杖。

curl -sS -X POST \
  "<Access Token Endpoint – fetched from Blockchain Platform Manager>" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=password" \
  -d "client_id=<CLIENT_ID>" \
  -d "client_secret=<CLIENT_SECRET>" \
  -d "username=<USERNAME>" \
  -d "password=<PASSWORD>"
下列文字顯示範例回應。然後,使用 access_token 值作為後續呼叫的 Bearer 權杖。
{
  "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9....",
  "expires_in": 300,
  "token_type": "Bearer"
    ...
}

授權

存取是使用下列群組成員來控制,該群組成員會在記號宣告中傳達。
  • JSON-RPC 存取需要下列群組的成員身分:BESU_RPC_GW_<instance_id>
  • 執行處理描述資料 API 也需要下列群組的成員身分:OBP_<BPMID>_CP_ADMIN

OpenAPI 規格

RPC 代理主機會發布其 REST 端點的 OpenAPI 規格。下列文字顯示範例要求。

curl -sS \
  "<RPC_PROXY_BASE_URL>/openapi" \
  -H "Authorization: Bearer <access token>" \
  -H "Accept: application/yaml"
RPC 代理主機會顯示下列類型的 API。如需完整詳細資訊,請參閱位於 RPC API for Oracle Blockchain Platform Enterprise Edition for Hyperledger Besu 的 OpenAPI 規格。
  • JSON-RPC 代理主機 API:提供乙太 JSON-RPC 方法 (例如 eth_calleth_getBalanceeth_sendRawTransactioneth_getTransactionReceipt) 的已認證和授權進入點。
  • 執行處理 / 程式實際執行資訊 API:提供用於檢視 genesis 檔案或下載建立參與者執行處理時所要使用之描述資料 .zip 檔案的執行處理描述資料。
  • 合約登錄 API:提供管理與查詢已儲存合約中繼資料的端點。例如,應用程式二進位介面 (ABI)、位元組碼、清單、實行以及儲存體配置。
  • 公事包 API:提供管理公事包的端點,包括建立和列出公事包、上傳金鑰以及啟用公事包。