本頁面使用機器翻譯自英語,可能包含錯誤或不清楚的語言。如需最準確的信息,請參閱英文原文。由於更新頻繁,部分內容可能與英文原文有出入。請加入我們在 Crowdin 上的努力,幫助我們改進本頁面的翻譯。 (Crowdin translation page, Contributing guide)
撰寫(費用委託)
當您要執行智能合約時,您可以向 feepayer 發送**"交易 ",其中包括支付請求**。
從web3py_ext導入extend,將 web3 擴展為 kaia web3
從 web3 和 eth_account 導入必要的實用程序
使用 kairos testnet 端點創建 Web3 實例
此外,您還可以將提供商 URL 從 kairos 更改為 quicknode
從每個私人密鑰加載用戶和收費委託人賬戶
創建合同實例,並提供其地址和 ABI
設置在部署教程中部署的合約地址(計數器合同)。 您可以在部署 tx 收據中看到地址
設置合約 abi。 使用 remix 或 solc 編譯器編譯後,可以獲得 ABI
調用合約的視圖函數並打印結果
使用 build_transaction創建一個 tx,返回 tx 實例和作為參數傳遞的字段。 您應設置TxType.FEE_DELEGATED_SMART_CONTRACT_EXECUTION類型,以便向費用支付方申請費用委託。
increment() 會自動讓函數調用數據並將其設置到 data 字段中
使用 fill_transaction 添加交易的其餘字段,如氣量限制、Nonce等。 如果您想查看以下內容,可以打印這一行之後的所有字段
用用戶的私鑰簽署交易
使用收費委託人的密鑰,以收費人的身份簽署交易。 您還需要提供繳費人的地址。
發送原始交易並獲取交易哈希值
等待交易收據
檢查合約是否已更新狀態