· 2天 ago
这是一个独立、轻量级的指南,用于使用 Hono(超快 JS 框架)和 x402(HTTP 402 微支付协议)构建支付墙 API。
这是一个独立、轻量级的指南,用于使用 Hono(超快 JS 框架)和 x402(HTTP 402 微支付协议)构建支付墙 API。适合边缘部署的高性能服务,如 Pickful 项目中的 AI 推荐 API 收费或内容订阅。x402 让支付无缝:用户支付后返回 200 OK,支持 USD/ETH,无需钱包 SDK。
为什么 Hono + x402?
适用于独立微服务,如 Pickful 的 pay-per-use 功能,后续可与 Rails/Express 等集成。
0x9e9013ee17f53968775535f8601fbbc63ffbdbc0)。mkdir hono-x402 && cd hono-x402
pnpm init # 创建 package.json
pnpm add hono x402-hono x402 # 核心:Hono + x402 集成
pnpm add -D @hono/node-server tsx @types/node # Node 服务器 + TS 支持
app.ts替换你的钱包地址,配置支付路由(示例基于 Pickful 的高级推荐端点)。
import { Hono } from "hono";
import { paymentMiddleware } from "x402-hono";
import { serve } from "@hono/node-server";
const app = new Hono();
// 配置支付墙:payTo 是你的钱包地址
app.use(paymentMiddleware("0x9e9013ee17f53968775535f8601fbbc63ffbdbc0", {
"/api/pickful-premium": {
price: "$0.05", // USD 定价,或 "0.001 ETH"
network: "base-sepolia", // 测试网
config: {
description: "访问 Pickful 高级推荐内容",
maxTimeoutSeconds: 300, // 支付有效期
mimeType: "application/json"
}
}
// 添加更多:"/api/pickful-ai-generate": { price: "$0.10", ... }
}));
// 保护的路由:支付成功返回内容
app.get("/api/pickful-premium", (c) => {
return c.json({ message: "Pickful 付费内容解锁!", data: "你的独家推荐数据" });
});
// 启动服务器
serve({ fetch: app.fetch, port: 3000 });
console.log("Hono + x402 running on http://localhost:3000");
package.json 脚本{
"scripts": {
"dev": "tsx watch app.ts",
"start": "tsx app.ts"
}
}
pnpm dev # 监听 http://localhost:3000
http://localhost:3000/api/pickful-premium。X402-Price 头(支付墙)。PAY_TO_ADDRESS=你的地址、FACILITATOR_URL=官方服务。base),HTTPS 必备。动态定价:用函数计算 price。Hono + x402 让微支付 API 启动只需 5 分钟。高性能、易扩展,如 Pickful 项目中的实时收费场景。欢迎 fork/PR 到 GitHub!
资源:
Author Robert
与您的关注者分享。
回复