lesson-1_コントラクトのデプロイ
🌏 テストネットにホワイトリストと NFT のコントラクトをデプロイする
テストネットでのコントラクトのデプロイ前に、ガスを必要とせず、デプロイが迅速なため、
JS VM
を使用してコントラクトを徹底的にテストできます。
最初にPolygon Amoy
テストネットでテストトークンを受け取ったことを覚えていますか? 次に、このテストネットへWhitelist.sol
とShield.sol
のコントラクトをデプロイします。
右上の「Connected
」ボタンをクリックし、「Disconnect
」を選択します。
「Injected Web3 Provider
」を選択します。
「Metamask
」をクリックします。
「Amoy
」を選択します。
📝 Whitelist.sol をデプロイする
まずWhitelis.sol
をコンパイルします。
Deploy & Interactionパネルに移動し、最大4つの異なるホワイトリストアドレスを配列で入力します。例:["0xa323A54987cE8F51A648AF2826beb49c368B8bC6","0x4f2249958655e1b78064cc3d1F1b8a0B12D1dbDE","0x03692A0187c6D8Be757Be0f0775b94B484fFC15D","0x643AAe9DA7f3542f370FD87ea1781bD54D541578"]
「Deploy
」をクリックします。
次のステップは、JS VMを使うのとは異なり、コントラクトを検証することです。コントラクトを検証した後、Etherscanのようなプラットフォームでオープンソース化され、他の人がソースコードをレビューできるようになり、コントラクトの公正さと正確さが保証されます。
ChainIDEは便利なVerifyプラグインを提供しています。ユーザーは対応するScan API Keyを取得するだけで、素早くコントラクトを検証することができます。
Scan Verifierパネルに切り替え、「Polygon API Key」の隣にあるリダイレクトリンク をクリックします。
ログインページで、「Login
」または「Click to sign up
」のいずれかを選択します。
「API Keys
」を選択します。
「Add
」選択します。
AppName
に好きな名前を入力し、「Continue
」をクリックします。
その後、API Key
が生成されます(APIキーは他の人と共有しないでください。キーの使用速度には制限があります。私のキーの1つは98TSWD2C57949VSZVFCZ15WKYDVSCMJKQM
です)。生成されたキーをコピーします。
ChainIDEに貼り付けます。
また、INTERACT
セクションで、対応するコンストラクタとコントラクトのアドレスをコピーします。
Scan Verifierパネルに貼り付け、「Verify
」をクリックします。
おめでとうございます、検証成功です!
🛡 Shield.sol のデプロイ
Shield.sol
のコンパイルから始めましょう。
デプロイページに切り替えます。コンストラクタで
baseURI
には、メタデータセクションで生成されたIPFS URIを指定します。私の場合はこちらです:ipfs://bafybeihuwmkxnqban2ukneymhwctxfqec5ywrdiqyc7vmyegftrllf7gq/
whitelistContract
には、今デプロイしたホワイトリストのアドレスを指定します。私のはこちらです:0x78dd3EA257535E08BA0Ee5d2eB5E5c8C64304AFf
デプロイ後、再びScan Verifierパネルに移動します。検証のために同じbaseURI
とwhitelistContract
を入力します。また、デプロイしたばかりのShield.sol
コントラクトのアドレスも入力します。「Verify
」をクリックし、検証が成功するのを待ちましょう。
素晴らしい、コントラクトに関する部分はほぼ完了しました。次は、ホワイトリストに登録されたユーザーがミント操作を行うためのフロントエンドページを開発する必要があります。
🙋♂️ 質問する
ここまでの作業で何かわからないことがある場合は、Discordの#polygon
で質問をしてください。
ヘルプをするときのフローが円滑になるので、エラーレポートには下記の4点を記載してください ✨
1. 質問が関連しているセクション番号とレッスン番号
2. 何をしようとしていたか
3. エラー文をコピー&ペースト
4. エラー画面のスクリーンショット