x402 on Gonka
检查中…

Git:gonkalabs 的 Git 仓库暂时不可用。请从本网站下载源码 — 源码

快速开始

三条短路径:查看 402、作为买家支付演示,或作为卖家调用协调器。本次部署的基址是

1. 查看 402

在附上签名之前,演示资源未支付。该请求必须返回 HTTP 402 和 PAYMENT-REQUIRED 头。

curl -i {{BASE}}/demo

JSON 正文与请求头中的对象相同(解码后)。accepts 列出 GNK 和 USDC。支付时选择其一。

402 正文将显示在这里。

2. 支付演示

你需要 Go,以及地址上已有 GNK 或桥接 USDC 的 Gonka 私钥。gonkalabs 的 Git 仓库暂时不可用 — 请从本网站获取源码。密钥留在你的机器上。

curl -fsSL {{BASE}}/releases/x402-gonka-source.tar.gz | tar -xz
cd x402-gonka
go run ./cmd/x402-gonka pay --key "$GONKA_PRIVATE_KEY" --url {{BASE}}/demo
go run ./cmd/x402-gonka pay --key "$GONKA_PRIVATE_KEY" --url {{BASE}}/demo --asset usdc

归档在 源码。参数见 CLI。签名器实际构造的内容见 代理与买家

链上结算

我们用这些命令以 GNK 支付了 /demo。十六进制私钥只在签名机的 $GONKA_PRIVATE_KEY 里,从未发到本主机。

curl -i {{BASE}}/demo
curl -fsSL {{BASE}}/releases/x402-gonka-source.tar.gz | tar -xz
cd x402-gonka
go run ./cmd/x402-gonka pay --key "$GONKA_PRIVATE_KEY" --url {{BASE}}/demo

未付款的 curl 返回 HTTP 402。pay 在本地签名,带 PAYMENT-SIGNATURE 重试,并打印:

status=200
{
  "ok": true,
  "product": "x402-gonka",
  "message": "Payment settled on Gonka.",
  "payer": "gonka150c4lsmsdr23vly466lskajkfhqh7eghmyjern",
  "network": "cosmos:gonka-mainnet",
  "transaction": "23B76D1281F9EFCC7AFC90659480CF3219A7099959C0513720769F700E9B73B2",
  "explorer": "https://gonka.gg/tx/23B76D1281F9EFCC7AFC90659480CF3219A7099959C0513720769F700E9B73B2"
}

随后在 rpc.gonka.gg 核对付款地址余额和交易:

curl -sS https://rpc.gonka.gg/chain-api/cosmos/bank/v1beta1/balances/gonka150c4lsmsdr23vly466lskajkfhqh7eghmyjern
curl -sS https://rpc.gonka.gg/chain-api/cosmos/tx/v1beta1/txs/23B76D1281F9EFCC7AFC90659480CF3219A7099959C0513720769F700E9B73B2
付款地址gonka150c4lsmsdr23vly466lskajkfhqh7eghmyjern
金额1000 ngonka(0.000001 GNK)
余额5.000000000 → 4.999999000 GNK
高度5745133 · code 0
交易23B76D1281F9EFCC7AFC90659480CF3219A7099959C0513720769F700E9B73B2

gonka.gg 打开该哈希。此次未使用 USDC。

3. 调用协调器

卖家不必自己连链。先发现支持的类型,等客户端带 PAYMENT-SIGNATURE 重试后,再 POST /settle

curl -sS {{BASE}}/supported
curl -sS {{BASE}}/discovery/resources

如何在自有 API 中返回 402 见 卖家。已登记付费 URL 见 资源列表。请求与响应体见 HTTP API

前置条件

Go本地 Go 工具链,用于对本网站上的源码执行 go run。见 源码
钱包gonka1… 地址。GG Wallet、Keplr,或 x402-gonka keygen 生成的 hex 密钥。
资金足够支付所公布金额的 GNK 或桥接 USDC。演示价格很小(见 accepts)。
RPC协调器使用 rpc.gonka.gg。买家可用同一 URL。无需 API 密钥。
账户付款地址必须已在链上存在(至少收到过一次转账),才能查询 sequence 和账户编号。