帖子
分享您的知识。

Sui 赞助交易-基本集成示例
传统上,使用去中心化应用程序(dApps)的用户面临着一个共同的障碍:汽油费. 就我们而言,这些 Sui 汽油费是在区块链上执行交易所必需的,通常会阻止新用户完全拥抱Web3的潜力. 但是,Sui创新的赞助交易功能消除了这一障碍,使开发者能够为其应用程序交易支付汽油费. 这种革命性的功能为无缝的用户体验铺平了道路,鼓励分散式应用程序的更广泛采用.
-themoveDev GitHub; -SuiQL GitHub 存储库;
如果你有任何问题,可以问他们 这里.
赞助交易工作流程
Sui 的赞助交易工作流程是一个精心策划的流程,可确保最终用户顺利进行无汽油费的交易. 以下是所涉步骤的明细.
用户启动操作
该过程在用户初始化GasLessTransactionData
交易时启动,这表明他们打算在 dApp 中执行特定操作.
dApp 创建 Sui 交易区块
赞助交易工作流程的核心是dApp创建交易区块的能力. 该块封装了所有必要的数据,包括用户的意图、要执行的操作以及任何关联的参数.
的传输 GasLessTransactionData
将GasLessTransactionData
发送给发起人,即赞助交易框架的关键参与者,并附上签名请求. 这些数据是即将进行的交易的基础.
验证和交易数据构建
发起人验证收到的交易和结构TransactionData
,包括必要的汽油费. 此步骤可确保交易获得适当的资金,以便在Sui区块链上执行.
交易签名
发起人签TransactionData
署,表示他们批准并承诺进行交易. 此签名所需的私钥安全地存储在 AWS Secrets Manager 中,从而确保了最大的安全性.
用户的验证和双重签名
签名的TransactionData
内容以及赞助商的签名将发回给用户. 用户验证交易细节并TransactionData
再次签名,从而创建准备执行的双签名交易.
在 Sui 上执行交易
双重签名的交易通过Sui节点(全节点)或发起人提交给Sui网络. Sui处理交易,在DApp中执行指定的操作,所有这些都不需要用户支付任何汽油费.
用户通知
最后,dApp 会通知用户该交易已获得赞助和发送.
实施 Sui 赞助的交易:开发者的视角
为了实现赞助交易,开发人员使用 sui-sign-sponsored-transaction
Lambda 函数与 Sui API 或赞助交易 API 进行交互. 以下是促进此过程的客户端代码一览:
const response = await fetch('http://localhost:5000/blockchain/sui-sign-sponsored-transaction', {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
sender: wallet.address,
module: libName,
action,
arguments: data,
}),
});
const sponsorSignedTransaction = await response.json();
const transactionBlock = TransactionBlock.from(sponsorSignedTransaction?.transactionBlockBytes);
const senderSignedTransaction = await wallet.signTransactionBlock({
transactionBlock,
});
const executeResponse = await provider.executeTransactionBlock({
transactionBlock: sponsorSignedTransaction?.transactionBlockBytes,
signature: [sponsorSignedTransaction?.signatureBytes, senderSignedTransaction.signature],
options: { showEffects: true },
requestType: 'WaitForLocalExecution',
});
该客户端代码充当用户、赞助商和Sui区块链之间的桥梁,可无缝执行无汽油费交易.
结论
Sui 的赞助交易功能代表了去中心化应用程序世界的模式转变,为用户消除了重要的进入壁垒. 通过对这一创新功能的探索,我们获得了宝贵的见解,这些见解塑造了我们构建用户友好型 dApp 的方法.
随意 这里 留下你的问题.
- Move
Move is an executable bytecode language used to implement custom transactions and smart contracts.