# MetaMask 與 Rabby 自訂 RPC 設定：URL 與 Chain ID

> Source: https://docs.blockvectra.com/zh-hant/guides/wallet-custom-rpc/

在 MetaMask 或 Rabby 中填入 RPC URL、Chain ID 與原生幣符號，需要認證時使用錢包專用 key。

* <strong>第一步：</strong>查看[錢包網路參數對照表](#supported-chains-network-parameter-table)，在錢包中填入對應欄位；認證 RPC 使用 `/v1/{chain}/{api_key}`。
* <strong>完成條件：</strong>在 MetaMask 儲存後，網路已新增並切換到該網路；填寫的鏈 ID 與端點回傳的 ID 一致。

[鏈參數與存取方式](https://blockvectra.com/zh-hant/chains/robinhood_mainnet/)。

## 1. 為什麼要使用自訂 RPC

區塊鏈生態系通常會提供預設的公共 RPC 端點，供社群基本使用與開發者入門。然而，官方網路文件會為這些端點定義明確的速率限制與使用範圍：

* **Robinhood Chain**：
  官方文件頁面[連線至 Robinhood Chain](https://docs.robinhood.com/chain/connecting) 指出，公共端點 `https://rpc.mainnet.chain.robinhood.com` 受到速率限制，不建議用於正式環境工作負載（*The following public endpoints are available but are rate-limited and not recommended for production use. For production, use a provider*）。
* **HyperEVM**：
  官方文件頁面[速率限制與使用者限制](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/rate-limits-and-user-limits) 規定公共端點 `rpc.hyperliquid.xyz/evm` 的 IP 限制為每分鐘最多 100 個 EVM JSON-RPC 請求（*Maximum of 100 EVM JSON-RPC requests per minute for rpc.hyperliquid.xyz/evm*）。

## 2. 錢包必填欄位與網路參數

EVM 錢包在新增或編輯網路時需要幾個特定欄位：

1. **網路名稱**：錢包介面中顯示的可讀標籤。
2. **RPC URL**：通訊端點。**API key 必須放在 URL 路徑中**，在 `api.blockvectra.com` 上使用路徑 `/v1/{chain}/{api_key}`：
   ```http
   /v1/{chain}/{api_key}
   ```
   > **重要**：MetaMask 與 Rabby 等錢包的 RPC URL 欄位只接受標準 HTTP(S) URL，**不支援自訂請求標頭**（例如 `x-api-key: {api_key}`）。因此，錢包連線必須直接在 URL 路徑中提供 API key。`{api_key}` 後方不要加上結尾斜線，並請注意，若請求的 `{chain}` 未知，會回傳 HTTP 404。
3. **Chain ID**：EIP-155 整數鏈識別碼。
4. **Currency Symbol**：鏈原生 gas 資產的符號（例如 `ETH`、`HYPE`）。
5. **Block Explorer URL**：網路區塊瀏覽器的主要網址。

### 支援鏈網路參數對照表

| 網路名稱 | RPC URL（路徑攜帶 Key） | 鏈 ID | 貨幣符號 | 區塊瀏覽器 URL |
| --- | --- | --- | --- | --- |
| [arb_mainnet](https://blockvectra.com/zh-hant/chains/arb_mainnet/) | `https://api.blockvectra.com/v1/arb_mainnet/{api_key}` | 42161 | [ETH](https://docs.arbitrum.io/build-decentralized-apps/reference/node-providers) | [arbiscan.io](https://arbiscan.io) |
| [base_mainnet](https://blockvectra.com/zh-hant/chains/base_mainnet/) | `https://api.blockvectra.com/v1/base_mainnet/{api_key}` | 8453 | [ETH](https://docs.base.org/docs/network-information/) | [basescan.org](https://basescan.org) |
| [bsc_mainnet](https://blockvectra.com/zh-hant/chains/bsc_mainnet/) | `https://api.blockvectra.com/v1/bsc_mainnet/{api_key}` | 56 | [BNB](https://docs.bnbchain.org/) | [bscscan.com](https://bscscan.com) |
| [以太坊](https://blockvectra.com/zh-hant/chains/eth_mainnet/) | `https://api.blockvectra.com/v1/eth_mainnet/{api_key}` | 1 | [ETH](https://ethereum.org/) | [etherscan.io](https://etherscan.io) |
| [eth_sepolia](https://blockvectra.com/zh-hant/chains/eth_sepolia/) | `https://api.blockvectra.com/v1/eth_sepolia/{api_key}` | 11155111 | [SepoliaETH](https://ethereum.org/en/developers/docs/networks/#sepolia) | [sepolia.etherscan.io](https://sepolia.etherscan.io) |
| [HyperEVM](https://blockvectra.com/zh-hant/chains/hyperevm_mainnet/) | `https://api.blockvectra.com/v1/hyperevm_mainnet/{api_key}` | 999 | [HYPE](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/hyperevm) | [hyperscan.com](https://www.hyperscan.com/) |
| [polygon_mainnet](https://blockvectra.com/zh-hant/chains/polygon_mainnet/) | `https://api.blockvectra.com/v1/polygon_mainnet/{api_key}` | 137 | [POL](https://docs.polygon.technology/) | [polygonscan.com](https://polygonscan.com) |
| [Robinhood Chain](https://blockvectra.com/zh-hant/chains/robinhood_mainnet/) | `https://api.blockvectra.com/v1/robinhood_mainnet/{api_key}` | 4663 | [ETH](https://docs.robinhood.com/chain/connecting) | [robinhoodchain.blockscout.com](https://robinhoodchain.blockscout.com) |
| [robinhood_testnet](https://blockvectra.com/zh-hant/chains/robinhood_testnet/) | `https://api.blockvectra.com/v1/robinhood_testnet/{api_key}` | 46630 | [ETH](https://docs.robinhood.com/chain/connecting) | [explorer.testnet.chain.robinhood.com](https://explorer.testnet.chain.robinhood.com) |

> **HyperEVM 唯讀限制**：BlockVectra HyperEVM 端點支援讀取，但不廣播交易。從錢包發送時，請使用支援 eth\_sendRawTransaction 的 RPC。廣播細節請參閱 HyperEVM 指南中的[使用 Foundry 或 Hardhat 部署](https://docs.blockvectra.com/zh-hant/guides/hyperevm-backfill/#deploy-with-foundry-or-hardhat)。

一把 API key 可搭配路徑中的 `{chain}` 換成所需的鏈代稱，跨支援鏈使用。共用配額與 URL 路由的詳細資訊，請參閱[一把 key、多條鏈指南](https://docs.blockvectra.com/en/guides/one-key-many-chains/)。

## 3. 錢包逐步操作說明

### MetaMask 設定步驟

依據 MetaMask 官方說明指南[如何新增自訂網路 RPC](https://support.metamask.io/networks-and-sidechains/managing-networks/how-to-add-a-custom-network-rpc/)：

1. 開啟 MetaMask 瀏覽器擴充功能或行動應用程式。
2. 點選介面頂端的網路選擇下拉式選單（或前往「設定」>「網路」）。
3. 選擇 **Add network**，然後在底部選擇 **Add a network manually**。
4. 使用上表填入網路詳細資訊：
   * **Network Name**：輸入上表中的鏈名稱。
   * **New RPC URL**：輸入你的路徑認證端點，例如 `https://api.blockvectra.com/v1/robinhood_mainnet/{api_key}`（將 `{api_key}` 取代為你實際的 API key）。
   * **Chain ID**：輸入上表中的整數鏈 ID。
   * **Currency Symbol**：輸入上表中的原生資產符號。
   * **Block Explorer URL**：輸入上表中的官方區塊瀏覽器網址（選填）。
5. 點選 **Save** 以新增網路並切換到該網路。

> **在 HyperEVM 上發送交易**：BlockVectra HyperEVM 端點支援讀取，但不廣播交易。從錢包發送時，請使用支援 eth\_sendRawTransaction 的 RPC（參閱 [HyperEVM 廣播說明](https://docs.blockvectra.com/zh-hant/guides/hyperevm-backfill/#deploy-with-foundry-or-hardhat)）。

> **編輯現有網路**：若要更新清單中現有網路的 RPC 端點，請前往「設定」>「網路」，選取目標網路，在 RPC URL 欄位中編輯或新增你的 BlockVectra URL，然後儲存變更。

### Rabby Wallet 設定步驟

在 Rabby 的自訂網路或自訂 RPC 設定中，輸入上表的參數：Network Name、RPC URL（含路徑 key `https://api.blockvectra.com/v1/{chain}/{api_key}`）、Chain ID、Currency Symbol 與 Block Explorer URL。

> **注意**：新增自訂網路或測試網時，請確認 Chain ID 與端點回傳的 ID 一致，以免發生網路 ID 不符的錯誤。

## 4. 安全性提示與用量管理

操作自訂 RPC 時，請留意以下安全與計費原則：

> \[!WARNING]
> **API Key 外洩風險**：RPC URL 路徑以純文字包含你的 API key。切勿在公開聊天室或論壇分享錢包網路設定的螢幕截圖，也不要將含有有效 key 的 URL 提交到公開程式碼儲存庫或文件。

1. **錢包請求會計入帳戶用量**：
   開啟錢包、切換帳戶或重新整理資產清單，都會觸發即時 JSON-RPC 呼叫（例如 `eth_blockNumber`、`eth_getBalance` 與 `eth_call`）。這些請求會依所呼叫方法的 CU 權重消耗容量（見[定價頁](https://blockvectra.com/zh-hant/pricing/)），並計入你的帳戶限額。
2. **為每個錢包建立專用 API key**：
   在[控制台](https://console.blockvectra.com/login/?next=%2Fkeys%2F)中建立一個專屬於你錢包的 API key（例如 `metamask-desktop` 或 `rabby-extension`）。這能讓你個人錢包的流量與伺服器應用程式、自動化腳本及 AI Agent 隔離。
3. **外洩時可獨立撤銷**：
   如果你懷疑錢包中設定的 API key 已外洩，請立即在控制台撤銷該把 key，不會影響任何其他執行中的 key 或服務。
   如果 session 過期或 key 遺失，請參閱程式化建立帳戶指南中的[遺失 session 或 API key？](https://docs.blockvectra.com/en/guides/programmatic-signup/#lost-your-session-or-api-key)，使用你的以太坊錢包簽章重新取得控制權。

## 5. 相關資源

* [歷史狀態限制](https://docs.blockvectra.com/zh-hant/guides/evm-historical-state/)：在要求較早的餘額或合約值之前，先查看認證狀態視窗與免 key 歷史；日誌查詢跨度是另一項限制。
* [一把 key、多條鏈指南](https://docs.blockvectra.com/en/guides/one-key-many-chains/)：詳細 URL 路由規則、使用 `GET /v1/chains` 的程式化探索，以及跨鏈配額機制。
* [定價與方案限制](https://blockvectra.com/zh-hant/pricing/)：CU 權重、吞吐量補充速率與付費儲值升級的資訊。

## 下一步

* [瀏覽資料集目錄](https://blockvectra.com/zh-hant/data/)，查看 BlockVectra 索引的全部資料集。
* [查看免費方案與定價](https://blockvectra.com/zh-hant/pricing/#free)，確認你的帳戶包含哪些內容。
* [登入控制台](https://console.blockvectra.com/login/?next=%2Fkeys%2F)以建立 API key。
