スマートコントラクトのデプロイ
TxTypeSmartContractDeployは、指定されたアドレスにスマートコントラクトをデプロイする。 このトランザクションタイプでは、以下の変更が行われる。
web3 および @kaiachain/web3js-ext パッケージをインポートして、Web3にKAIAの機能を追加します。
sender、fee payerのアドレスと秘密鍵を定義する。
指定されたkairos testnet URLでプロバイダを設定します。 Web3におけるプロバイダーは、ブロックチェーンのデータにアクセスするための読み取り専用の抽象レイヤーです。
また、プロバイダのURLをkairosからquicknodeに変更することができます。
web3.eth.account.privateKeyToAccount
を使用して、秘密鍵で送信者のウォレットを作成する。
web3.eth.account.privateKeyToAccount
を使用して、秘密鍵で料金支払者のウォレットを作成する。
トランザクションオブジェクトの定義
手数料支払者付きで新しいコントラクトをデプロイするトランザクションの場合、type: TxType.FeeDelegatedSmartContractDeploy を設定します
データをセットする:"0x60806040...`はコンパイルされたソリッドソースコードのバイトコードです。
その他、senderAddr、humanReadable、codeFormatなどの必要なパラメータを設定する。
signTransaction
を使ってsenderアカウントでトランザクションに署名する。
signTransactionAsFeePayer
を使用して、fee payerアカウントでトランザクションに署名する。
トランザクションをブロックチェーンに送信する。 取引レシートを返します。