9 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"
...
}授權
存取是使用下列群組成員來控制,該群組成員會在記號宣告中傳達。請參閱使用者群組與角色。
OpenAPI 規格
RPC 代理主機會發布其 REST 端點的 OpenAPI 規格。下列文字顯示範例要求。
curl -sS \
"<RPC_PROXY_BASE_URL>/openapi" \
-H "Authorization: Bearer <access token>" \
-H "Accept: application/yaml"RPC 代理主機會顯示下列類型的 API。如需詳細資訊,請參閱位於 Web3 Transactions and Besu Instance API 的 OpenAPI 規格。
- JSON-RPC 代理主機 API:提供乙太 JSON-RPC 方法 (例如
eth_call、eth_getBalance、eth_sendRawTransaction和eth_getTransactionReceipt) 的已認證和授權進入點。