HTTP 402 被激活!X402 协议如何让 AI 自己掏钱买服务?

272 阅读3分钟

大家好,我是大伟。  

最近,一个沉睡 30 年的 HTTP 状态码突然“复活”了——402 Payment Required。  

它不再只是 RFC 文档里的冷知识,而成了 AI Agent 自主消费的通行证。

更关键的是:钱直接从你钱包扣,不是平台积分,也不是虚拟币。  

今天,我就用一篇“喂饭级”实战文,带你搞懂 X402 是什么、怎么用、为什么重要,并附上一个可本地运行的完整 Demo——哪怕你是 Java 架构师,也能 10 分钟跑通。

一、X402 是什么?

官网地址:www.x402.org/

X402 是由 Coinbase 主导、Cloudflare 等科技巨头联合开发的开源支付协议,旨在激活 HTTP 协议中长期“闲置”的状态码 402 Payment Required,将其转化为互联网原生的加密支付通道 。

其核心目标是:让网页、API、AI Agent 能够自主收费与支付,无需人工干预、账户注册或 API Key,实现“按次付费”(Pay-Per-Use)的机器对机器(M2M)微支付 。

技术上,X402 通过在 HTTP 请求/响应头中嵌入 X-PAYMENT 和 X-PAYMENT-RESPONSE 字段,结合链上稳定币(如 USDC)完成自动结算,支持多链(如 Base、Solana),具备链无关性、低手续费、高集成度等优势 。

图片

二、核心用途与应用场景

  1. AI Agent 经济(AgentFi)
    AI 助手可自主调用付费 API(如天气、金融数据)、购买计算资源、订阅内容,形成“智能体自主经济”闭环 。

  2. API 微支付
    开发者可为每个 API 调用设置单价(如 $0.001/次),用户或 AI 直接通过加密钱包支付,无需预充值或签约 。

  3. Web 原生内容付费
    网站可对特定文章、视频、工具设置“单次解锁”,用户点击即付,体验无缝 

  4. MachineFi(机器金融)
    IoT 设备、自动驾驶系统等可自主支付数据服务、算力、带宽等资源 。

三、为什么现在爆火?因为 AI 需要“经济系统”

过去,AI 是“哑巴工具”,所有操作依赖人类预设。  

现在,Kimi、Manus 等 Agent 要独立完成任务:查数据、调 API、订酒店、买算力……  

没有支付能力,就无法闭环

X402 正好补上这一环:  

✅ AI 能自主调用付费 API(如金融数据、图像生成)  

✅ 开发者轻松实现“按次收费”  

✅ 网站可做“单次解锁”内容,告别广告骚扰

就像袋鼠帝用 Kimi OK Computer 生成旅游网站时,如果接入 X402,用户点击“预订”就能直接支付——AI 全程自动处理。

图片

四、Demo:用 Node.js 实现 X402 支付接口

下面是一个可本地运行的最小可行 Demo,展示如何让 API 通过 X402 收取 USDC。

🌐 Demo 名称:AI 天气查询服务(X402 微支付版)

1. 服务端(Node.js + Express)

const express = require('express');
const app = express();
const port = 3000;

// 模拟天气数据
const getWeather = (city) => {
  return { city, temperature: Math.floor(Math.random() * 35) + 5, unit: '°C' };
};

// X402 支付中间件
app.use('/weather', (req, res, next) => {
  const paymentHeader = req.headers['x-payment'];

  if (!paymentHeader) {
    // 未支付 → 返回 402 + 支付指引
    return res.status(402).json({
      error: 'Payment Required',
      x402: {
        paymentUrl: 'https://pay.x402.org/base?to=0xYourWallet&amount=100000', // 0.1 USDC (6 decimals)
        currency: 'USDC',
        chain: 'base',
        description: 'Weather API - $0.0001 per call'
      }
    });
  }

  // 简化验证:实际应校验链上交易
  console.log('Received payment header:', paymentHeader);
  next();
});

// 天气接口
app.get('/weather/:city', (req, res) => {
  const data = getWeather(req.params.city);
  res.json({ success: true, data });
});

app.listen(port, () => {
  console.log(`Weather API running at http://localhost:${port}`);
});

2. 客户端(AI Agent 或浏览器)调用流程

Step 1:首次请求(未支付)

curl http://localhost:3000/weather/Shanghai

Response(402)

{
  "error": "Payment Required",
  "x402": {
    "paymentUrl": "https://pay.x402.org/base?to=0xYourWallet&amount=100000",
    "currency": "USDC",
    "chain": "base"
  }
}

Step 2:AI 自动发起支付(模拟)
AI Agent 从 x402.paymentUrl 提取支付参数,调用钱包 SDK(如 Rainbow、Coinbase Wallet)发送 0.1 USDC 到服务方地址,并获取交易哈希 txHash

Step 3:携带支付凭证重试请求

curl -H "X-Payment: txHash=0xabc123...; chain=base; amount=100000" \     http://localhost:3000/weather/Shanghai

Response(200)

{  "success": true,  "data": { "city": "Shanghai", "temperature": 22, "unit": "°C" }}

3. 实际部署要点

  • 支付验证:生产环境需通过链上 RPC(如 Alchemy)验证 txHash 是否真实支付成功;
  • 钱包集成:前端可嵌入 X402 Pay SDK 自动弹出支付窗口;
  • 多链支持x402.chain 可为 basesolanapolygon 等;
  • AI 兼容:Kimi、Claude 等 Agent 可解析 402 响应并自动调用支付工具。

💡 Demo 地址参考
类似实现已用于 X402 官方示例 和 Coinbase 的 AI Agent 支付测试网

五:支付,才是 AI 的最后一公里

我们总说“AI 将改变世界”,但如果没有经济系统,AI 永远只是玩具。  

X402 的意义,是把支付变成互联网的原生能力——就像 HTTPS 让网站变安全一样。

未来,你可能会看到:  

  • AI 助手自动为你订阅课程,从你钱包扣款;  

  • 你的技术博客被引用,自动收到 0.001 美元版权费;  

  • 游戏 NPC 向你出售道具,收的是 USDC。

这一切,都始于一个简单的 402 Payment Required

如果你觉得这篇实战对你有启发,欢迎点赞、在看、转发三连。  

图片