您的位置:首页精文荟萃综合新闻 → (炒币平台怎么下载)Web3新手系列:探索链上支付新协议 —— x402

(炒币平台怎么下载)Web3新手系列:探索链上支付新协议 —— x402

时间:2026/1/10 17:21:10来源:www.pc6.com作者:佚名我要评论(0)

Coinbase 在前几天公布了新的支付协议:x402。由于 x402 由 coinbase 发起,所以理所当然的支持 base sepolia,并且默认可用。并且已经对 Solana 链提供了支持,证明了 x402 并不绑定某个链。

为了弄清楚流程,我新建了一个仓库(https://github.com/gin-lsl/x402-solana-demo),里面包含全部的 Server、Client 和 Facilitator。这里选择 Koa 作为基础框架,实现 client 能够通过支付 Devnet 的 USDC(自定义的 Token),获取服务器提供的某个接口的访问权限。

一些说明

首先我使用 spl-token 工具创建了相应的 token,可以在这里看到 https://solscan.io/token/9gKBTRXgVTszU31A12oJKKSy6aje8LyoVvNfSimembHo?cluster=devnet

这里选择 Solana 是因为这条链对开发者很友好,几乎提供了无限量的测试代币供所有人开发和测试,它不设置任何门槛,不需要登录、不需要绑定任何社交账号、不需要钱包在主网上有余额。

如果需要运行项目,需要创建一个 .env 并填写所需的环境变量,然后在终端启动服务器并运行客户端代码:

代码解释

由于只是作为演示所用,所以仅仅是简单的将它们放在了同一个地方。下面是一些主要的文件说明:

solana.ts

它提供了一个「 /solana/get-balance 」接口,我们假设这是一个很有价值的接口,调用它需要支付一小笔钱。作为 Server 的角色,对应序列图中 (5) ~ (8) 部分,更深入地说,是其中的 (7)。

通常 Server 只涉及到业务需求的处理,不需要涉及到链上交易等逻辑。所以,如果某个系统的开发人员不懂 Web3,也能够在尽量不改动自己的业务代码的前提下,接入 Web3 的支付方式。

它实现了 Facilitator 的能力,主要是提供了 /supported, /verify, /settle 接口,分别用于查询当前支持的链、验证交易数据以及上链结算能力。这里是与链交互的地方,它需要私钥以便能够支付链上交易的费用。它在架构上是独立于 Server(也就是 solana.ts)的,对应序列图中的 (9) 和 (10);

哪怕你决定自己提供 Facilitator 服务,这部分的代码实际上也是标准化的,基本可以直接使用官方提供的模式而不需要自行实现。不过目前官方只对 base 有完整的支持,如果想要使用其他链,则需要一些适配工作。其中主要是需要将模拟交易发送到链上来验证交易(如果是「 x402 」已经支持的链,则可以直接调用 verify 函数),以及将交易正式提交到链上并等待交易最终确认(如果是「 x402 」已经支持的链,则可以直接调用 settle 函数)。

对于 Solana 链来说,在请求走到 POST /settle 后,调用了「 x402/facilitator 」中的 settle 函数,里面经过一些验证后,调用了 rpc 上的 sendTransaction 发送交易,然后通过 waitForRecentTransactionConfirmation 等待并确认交易结果,所涉及到的代码通过 @solana/kit 提供。EVM 部分也是类似的逻辑。

x402-middleware.ts

用于将 Server 和 Facilitator 关联起来,它作为一个 Koa 中间件,能守卫需要付款才能调用的接口,代码参考了官方提供的「 x402-express 」。作用是自动返回 402 状态、转发 /verify 和 /settle 请求;

我在这部分的代码实际上只是在拼装各种参数,并将其转发给 facilitator 或返回给客户端。为了方便测试,避免涉及太多细节,我将大部分参数写成了固定值。其中包括:

将 maxAmountRequired 设置的非常大,这个值实际上在 client 中会被校验,如果用户需要支付的金额高于它,则直接会抛出异常。

将 asset 设置为了我们自己创建的 Token: 9gKBTRXgVTszU31A12oJKKSy6aje8LyoVvNfSimembHo,而不是 x402 中内置的 Token 地址。在主网,它应该是 USDC 官方的地址。炒币平台怎么下载

有意思的是,x402-express 通过重写 Response 上的函数,实现了类似 Koa 的洋葱模型。所以在他们对 express 提供的中间件中,实际流程是 verify -> 业务逻辑 -> settle。提交上链是在执行业务逻辑之后进行的,这确实符合上面的序列图。在 Koa 中实现这个逻辑非常简单,Express 中则需要一些额外的代码,这可能也是他们优先提供了 express 中间件的原因吧。炒币平台怎么下载

payment-client-fetch.ts炒币平台怎么下载

充当客户端角色,对服务器发起请求,对应流程图中 1 ~ 4。其中使用了「 x402-fetch 」提供的帮助函数,自动处理 402 状态、使用客户端钱包的私钥生成签名并重新发送等;

它会尝试直接请求接口,遇到 402 错误后,会读取返回的内容(里面应该包含服务器支持的 x402 版本,目前固定为 1, 以及服务器需要的必填参数),通过你的私钥对交易签名,然后将交易信息序列化后通过 X-PAYMENT Header 再次发送到原 url。

了解项目的基本结构后,我们可以通过以下命令运行 Server 和 Client:

客户端的执行结果及日志:

思考

个人认为,如果说 Web3 开发者们之前所做的努力,是为了降低普通用户使用 Web3 的门槛,让最终用户能够更方便的使用 Web3 的生态(支付、投资等)。那么现在的 x402,则是为了能够降低 Web2 开发者们接入 Web3 支付渠道的门槛而诞生的。

x402/client 部分提供的帮助函数虽然有用,但也只是做了它应该做的事情。现在用户能够通过钱包支付 USDC 等,实际上已经很方便了。所以相对来说,x402 对于开发者和服务提供方的意义可能更大。

但是 x402 真正大范围应用依然会遇到很多问题。一些大型公司内部会有结算系统,在如何对接新的标准方面,会有自己的态度和节奏,想要将一个新的支付方式集成到自己现有的系统中,必然还需要很远的路要走。并且大型公司在对接支付时,必然要考虑监管方面的影响,这也可能会导致他们不得不放弃更加方便的支付方式,依旧使用流程复杂的传统方案。

也许 Node RPC 提供方会对它更加青睐,RPC 提供方除了提供基础接口,还会提供许多 Advance API、交易加速接口等,这部分如果能通过 x402 提供,也许能让更多人体验他们的服务。

最后请注意,x420 本身只是一个基础的支付协议,它的意义是提出了一套规范的技术标准,而有了公认的标准后,则能更方便的让开发者和各个大中小型公司一起针对标准完善整个生态。我们应该理性的看待新标准的提出,避免陷入炒作者们的叙事陷阱中。



相关阅读:

https://m.pc6.com/n/332144

https://m.pc6.com/n/332312

https://m.pc6.com/n/332318

https://m.pc6.com/n/332588

https://m.pc6.com/n/332262


相关视频

    没有数据

相关阅读 (炒币平台app哪个最好)一周代币解锁:LINEA解锁量达流通量16.4%(炒币平台有哪些)谁才是「数字黄金」?一场跨越 TradFi与Crypto的(炒币的软件)3分钟读懂X402协议:AI自主支付的真正起点(玩币的平台)VanEck称,比特币价格到2050年可能飙升至5300万美元(玩币的平台)Bitmine 刚刚锁定了价值 6000 万美元的以太坊——这(玩币的平台)安德森·霍洛维茨基金已筹集超过150亿美元,用于推进(新币担保平台官网)黑客攻击金融公司,228,876名美国人收到警告—(新币担保平台官网)美国某大城市启动保障收入计划,每人将获得15

文章评论
发表评论

热门文章 深度理解比特幣「隔離印尼央行推「國家版穩跨鏈橋Garden Finance殺!比特幣跌破 10 萬

最新文章 (炒币平台怎么下载)We(炒币平台有哪些)谁才 (在哪儿可以买币)纽约银行将发行代币化存款(在哪儿可以买币)纽约银行与Ripple Prime合(虚拟币交易app)2026年最值得关注的顶级AI代(在哪儿可以买币)加密货币的“最佳季度”并

人气排行 重装win7系统后键盘鼠标怎么都不能用怎么办2018性能最好的手机前十位 2018性能最好手机呵男人什么意思 呵男人表情包 呵男人呵女人6家共享单车倒闭是哪六家 6家共享单车倒闭什最全的nba历史得分榜和nba历史得分排名微信小程序是什么 微信小程序怎么申请单反相机什么牌子好?单反相机入门推荐支付宝转账限额多少钱 支付宝为什么限额