发送消息
TON Connect 2.0 不仅仅提供了在 dApp 中认证用户的强大选项:它还可以通过已连接的钱包发送外部消息!
您将了解到:
- 如何从 DApp 发送消息到区块链
- 如何在一次交易中发送多条消息
- 如何使用 TON Connect 部署合约
演示页面
我们将使用 JavaScript 的低级 TON Connect SDK 。我们将在钱包已连接的页面上的浏览器控制台上做实验。以下是示例页面:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://unpkg.com/@tonconnect/sdk@latest/dist/tonconnect-sdk.min.js"></script>
<script src="https://unpkg.com/[email protected]/dist/tonweb.js"></script>
</head>
<body>
<script>
window.onload = async () => {
window.connector = new TonConnectSDK.TonConnect({
manifestUrl: 'https://ratingers.pythonanywhere.com/ratelance/tonconnect-manifest.json'
});
connector.restoreConnection();
}
</script>
</body>
</html>
随意将其复制粘贴到您的浏览器控制台并运行。
发送多条消息
1. 了解任务
我们将在一次交易中发送两条独立的消息:一条发送到您自己的地址,携带 0.2 TON,另一条发送到其他钱包地址,携带 0.1 TON。
顺便说一下,一次交易中发送的消息有限制:
2. 发送消息
运行以下代码:
console.log(await connector.sendTransaction({
validUntil: Math.floor(new Date() / 1000) + 360,
messages: [
{
address: connector.wallet.account.address,
amount: "200000000"
},
{
address: "0:b2a1ecf5545e076cd36ae516ea7ebdf32aea008caa2b84af9866becb208895ad",
amount: "100000000"
}
]
}));
您会注意到这个命令没有在控制台打印任何东西,像返回无内容的函数一样,null
或 undefined
。这意味着 connector.sendTransaction
不会立即退出。
打开您的钱包应用,您会看到原因。有一个请求,显示您要发送的内容以及coin将会去向哪里。请接受它。