
引言
本应用演示了如何使用x402 协议为视频内容实现付费墙。该 Web 应用允许用户支付少量加密货币(USDC)来访问受付费墙保护的视频内容,展示了如何将微支付集成到内容分发系统中。
此示例应用基于我们的综合指南,该指南详细介绍了如何实施x402 以实现内容变现。
技术栈
- 后端框架:Express.js
- 语言:JavaScript
- 运行时环境:Node.js
- 付款协议: x402
- 区块链网络:Base
功能
- x402 集成:实现x402 协议,以实现无缝的小额支付。
- 视频内容付费墙:通过付费壁垒保护优质视频内容。
- USDC 支付:支持在Base testnet 接受 USDC 支付testnet 测试。
- 自动身份验证:自动处理支付验证和内容访问。
- Express.js 中间件:使用x402 中间件,便于集成。
- 钱包集成:兼容支持 EVM 的钱包。
- Testnet :专为Base testnet 打造testnet 轻松mainnet 。
入门指南
先决条件
要运行此应用,您需要:
安装依赖项
- 将代码库克隆到本地机器上:
git clone https://github.com/quiknode-labs/qn-guide-examples.git
- 导航至项目目录:
cdx402
- 安装必要的依赖项:
npm 安装
设置环境变量
重命名 .env.local 到 .env 并将占位符值替换为您的实际配置:
WALLET_ADDRESS=您的以太坊钱包地址
NODE_ENV=development
PORT=4021
注: 替换
WALLET_ADDRESS请填写您希望接收付款的实际钱包地址。
获取测试令牌
要测试该应用程序,您需要Base USDC:
- 访问Circle Faucet
- 在网络下拉菜单中选择Base ”
- 申请测试版 USDC 代币
运行应用程序
运行开发服务器:
npm 运行 dev
在浏览器中打开http://localhost:4021/即可查看该应用程序。
如何使用该应用
- 在浏览器中访问该应用程序。
- 尝试访问付费视频内容。
- 请使用您的钱包完成支付流程。
- 支付成功后,即可观看已解锁的视频内容。
该应用程序使用x402 中间件来保护 /authenticate endpoint,要求在授予高级内容访问权限前先完成支付。
工作原理
该应用程序的flow 如下:
付款保障: 服务器使用 x402 用于保护该的中间件 /authenticate endpoint,确保只有付费用户才能访问高级内容。endpoint, ensuring only paid users can access premium content.
支付流程:当用户尝试访问受保护的endpoint时,系统会要求其通过已连接的钱包进行加密货币支付。
内容访问: 支付验证成功后,用户将被重定向至 /视频内容,那里提供优质视频内容。
自动验证:x402 会自动处理支付验证,从而简化用户体验。
自定义
该应用程序可轻松针对不同的使用场景进行定制:
价格配置: 要更改视频的价格,请修改 价格 参数在 api/index.js.
内容更新: 若要使用其他视频,请在 public/video-content.html.
网络迁移: 若要在Base mainnet进行部署,请更新中的网络配置 api/index.js. 请注意,mainnet 需要 CDP API 密钥以及另一位协调员。
支付代币:通过更新支付配置,可以对应用程序进行修改,使其支持不同的 ERC-20 代币。
预览


结论
x402 协议可将微支付无缝集成到 Web 应用程序中,因此非常适合内容变现、数字商品和订阅服务。本演示展示了为付费内容实现基于加密货币的付费墙是多么简单。
无论您是正在构建内容平台、推出付费功能,还是探索新的变现模式,x402 都能为您将区块链支付集成到应用程序中提供基础支持。
如需进一步了解如何实施x402 及其他区块链集成解决方案,请联系我们——我们非常期待能协助您共同构建去中心化应用的未来!
- 分叉该仓库
- 创建一个功能分支:git checkout -b feature/amazing-feature
- 提交您的更改:git commit -m "添加超棒的功能"
- 推送您的分支:git push origin feature/amazing-feature
- 提交一个拉取请求。
