solana 功能求解

channg01 · 2025-8-16 22:23:51 · 1922 次点击
假设我的网站增加了一个功能,可以用我网站的积分兑换 FSHEX 币,用户点击按钮,我后端构建交易内容,前端弹出 phantom 钱包的交易,比如说他有 200 积分兑换了 200V2ex ,然后用户支付 ADA 和 gas 就可以兑换了。

但是用户可以点击取消,那么我怎么知道这个交易有没有完成呢?必须通过轮训吗?

很明在用户点击的时候我应该冻结对应的积分,但是我不知道啥时候需要解冻。

phantom 的交易页面还可以一直挂起,虽然时间长之后区块错了会报错。但是我不知道交易最终结果。

这个有什么好的解法吗?
举报· 1922 次点击
登录 注册 站外分享
17 条回复  
JoeJoeJoe 初学 2025-8-16 22:25:49
不用其实, 站长提供了一个 api 地址, 可以通过回调来分析用户真正打款了没, 只有收到用户的打款你再执行你的业务逻辑就好, 等我找找站长的地址一会贴给你
channg01 楼主 小成 2025-8-16 22:28:00
@JoeJoeJoe #1 FSHEX 币只是我举例,其实我要兑换的是其他的代币
JoeJoeJoe 初学 2025-8-16 22:30:34
@channg01 一样的, 站长提供的是 Helius 的 api, 你可以看一下 via: https://fex.com/t/1151386#r_16606232
channg01 楼主 小成 2025-8-16 22:32:57
@JoeJoeJoe #3 我知道,但是现在只有轮训检测这一种方式,想看看有没有其他的方式。
stabc 初学 2025-8-16 22:34:45
给用户转币不需要用户签名,也就是不需要弹 phantom
BeCool 初学 2025-8-16 22:34:56
前端可以得到支付完成的 tx ,用户取消时是得不到这个 tx 的。 即使得到 tx ,也要在后端去 check 这个记录是否在链上。 https://fex.com/t/1151332
JoeJoeJoe 初学 2025-8-16 22:35:21
@channg01 #4 我又突然想到一种方法, 如果仅仅是用户前端点了取消的话, 你的前端界面是可以监听到的 ps: 我觉得你可能得画个图来理理交互逻辑.
channg01 楼主 小成 2025-8-16 22:35:44
@stabc #5 我要让用户自己支付 ata 和 gashttps://i.imgur.com/VUWFktU.png 要不然一个 ata2 块多钱呢
channg01 楼主 小成 2025-8-16 22:36:27
@channg01 #7 打错了 ADA
12下一页
返回顶部