課題
執筆時点現在で、Polygonは大変人気となっているため、MetaMaskでPolygonを使ってると意味わかんないエラー表示が出たり、トランザクションが失敗したりします。
よくあるエラー表示例
- Internal JSON-RPC error
- transaction underpriced
本記事では、これの解決方法を書きたいと思います。
解決策① ガス価格を上げる
特に、以下のようなtransaction underpricedというエラー表示が出る場合なのですが、
Transaction N failed! Error: [ethjs-rpc] while formatting outputs from RPC '{"value":{"code":-32000, "message":"transaction underpriced"}}'
これは、単純にガス価格(処理手数料)が低すぎてネットワークで処理してもらえない。ってことです。
通常、MetaMaskや使ってるサイトが自動で適正なガス価格を提案してくれるのですが、何らかの要因でそれでは足りなくなってしまうということがあります。
なので解決策としては、以下のように手動でガス価格を上げます。
ガス価格を上げるやり方
- 何らかの処理をネットワークに送信する際、MetaMaskでの承認画面が出ますよね。
- その時、「編集」ボタンを押す。
- 「ガス代の提案を編集」を押す。
- 「高」をチェックした状態で、「保存」
解決策② RPCを変更する。
特に、下記のエラー表示(Internal JSON-RPC error)が出る場合に有効ですが、全体的に速くなるので、オススメの設定方法です。
RPCとは何か
Polygonネットワークを設定した際に入力してるのですが、簡潔に言えば、「Polygonネットワークへの入り口」です。ノードプロバイダとも言います。
Polygonやイーサリアムというブロックチェーンは無数のコンピュータで構成されており、RPCはその内の一つです。
MetaMaskはそのうちの一つを選んで接続します。
つまり、RPCとはブロックチェーンへの入り口ですね。
この入り口が混み合っていると、スムーズにデータ通信が行えません。
ならば、空いてる入り口にMetaMaskをつなぎ変えればええやんということですね。
やり方
現在無料で公開されているPolygonのRPCは以下のものがあります。
- https://rpc-mainnet.matic.network
- https://polygon-rpc.com
- https://rpc-mainnet.maticvigil.com
- https://rpc-mainnet.matic.quiknode.pro
この中から、今設定していない奴に変更することで、空いてる可能性があるってことですね。
RPCの変更は、ネットワークを一旦削除し、再追加する必要があります。
MetaMask画面上部のネットワーク選択画面から、
- 消したいネットワークにマウスを合わせると×ボタンが出るので、それを押して削除。
- 「ネットワークを追加」ボタンを押す。
- 以下のように入力して保存。
(入力が面倒くさい人は、1の後、こちらにアクセスしてボタンを押すだけ)
ネットワーク名 | Polygon |
新しいRPC URL | (上記4つから選ぶ) |
チェーンID | 137 |
通貨記号 | MATIC |
ブロックエクスプローラーのURL | https://polygonscan.com/ |
もっとスムーズに使えるRPCはないの?
え、メタマスクが止まる度にこれやんの?
だるくない?
しかもRPCの4つ全部混んでたらどうすんの?
そんなあなたには、(ちょっと登録が面倒だけど)おすすめのRPCがあります。
その名も、alchemy(アルケミー)ですね。
alchemyは無料枠に限度があるのですが、1日数十万アクセスと果てしなく広いので、個人利用なら無料で無限に使えると言って良い。
やり方
- まず、alchemyにアクセス
- 「Get started for free」を押す。
- メールアドレス等の情報を入力して進むと、メール認証があります。
- 「Ethereum」を選んだ状態で、「Get started」を押す。
- Create your first appはTEAM NAMEとAPP NAMEは適当で良い。Polygon Mainnetを選択して「Create App」をおす。
- 途中でクレジットカードの入力を求められるけど、「Skip for now」で良い。後は適当にアンケートに答えて登録完了。
で、ダッシュボード画面になるので、以下画像の赤枠がRPC URLになります。
これを使うのが、現状最も速いですね。
コメント