本页面使用机器翻译自英语,可能包含错误或不清楚的语言。如需最准确的信息,请参阅英文原文。由于更新频繁,部分内容可能与英文原文有出入。请加入我们在 Crowdin 上的努力,帮助我们改进本页面的翻译。 (Crowdin translation page, Contributing guide)
撰写(费用委托)
当您要执行智能合约时,您可以向 feepayer 发送**"交易 ",其中包括支付请求**。
导入**@kaiachain/viem-ext**软件包,在 web3 上添加 kaia 功能
初始化公共客户端,用于与 Kaia 区块链进行只读交互。
使用 createWalletClient,配置Kairos链、HTTP传输和转换为账户的发送方私钥,建立发送方和付费方钱包。
在至字段中设置要执行的合同地址,并设置ABI。
使用 encodeFunctionData 函数对函数名和参数进行编码
使用prepareTransactionRequest创建写入智能合约的交易请求,指定发送方账户、接收方地址、要转账的金额(本例中为 0 KLAY)和交易类型**(TxType.SmartContractExecution)**。
使用钱包客户端的 signTransaction 方法签署交易。
发送者使用 "klay_sendRawTransaction "向 Kaia 区块链提交交易,并记录结果(通常是交易哈希值)。 汇款人支付交易费用。
准备一个费用委托事务("FeeDelegatedSmartContractExecution"),以调用合同上相同的 "setNumber "函数。 设置与非收费委托交易类似,但收费人在交易上签字,以**支付费用。
发送方首先签署交易,缴费方添加签名,然后将交易提交到 Kaia 区块链。
通过调用 number 函数(一个不修改状态的视图函数),使用公共客户端从合约中读取数字变量的值。