跳转至主要内容
返回示例应用

Coinbasex402 付费墙演示

本项目演示了如何使用x402 协议为视频内容实现付费墙。该 Web 应用允许用户支付少量加密货币(USDC)来访问受付费墙保护的视频内容。

前端框架/库:
Express.js
语言:
JavaScript
构建工具/开发服务器:
Node.js
示例应用预览

引言

本应用演示了如何使用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 。

入门指南

先决条件

要运行此应用,您需要:


  • 您的系统上已安装Node.js(v22 或更高版本)。
  • 一款支持EVM的钱包,Base USDC用于测试。
  • 代码编辑器或集成开发环境(例如VS Code

安装依赖项


  1. 将代码库克隆到本地机器上:
git clone https://github.com/quiknode-labs/qn-guide-examples.git

  1. 导航至项目目录:
cdx402

  1. 安装必要的依赖项:
npm 安装

设置环境变量

重命名 .env.local.env 并将占位符值替换为您的实际配置:

WALLET_ADDRESS=您的以太坊钱包地址
NODE_ENV=development
PORT=4021

: 替换 WALLET_ADDRESS 请填写您希望接收付款的实际钱包地址。

获取测试令牌

要测试该应用程序,您需要Base USDC:


  1. 访问Circle Faucet
  2. 在网络下拉菜单中选择Base ”
  3. 申请测试版 USDC 代币

运行应用程序

运行开发服务器:

npm 运行 dev

在浏览器中打开http://localhost:4021/即可查看该应用程序。


如何使用该应用


  1. 在浏览器中访问该应用程序。
  2. 尝试访问付费视频内容。
  3. 请使用您的钱包完成支付流程。
  4. 支付成功后,即可观看已解锁的视频内容。

该应用程序使用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 及其他区块链集成解决方案,请联系我们——我们非常期待能协助您共同构建去中心化应用的未来!

投稿与反馈
我们非常期待收到您的反馈,并欢迎大家为本示例应用贡献力量!
如需报告问题或提供反馈,请在 qn-guide-示例 存储库。
如需贡献,请按照以下步骤操作:
  1. 分叉该仓库
  2. 创建一个功能分支:
    git checkout -b feature/amazing-feature
  3. 提交您的更改:
    git commit -m "添加超棒的功能"
  4. 推送您的分支:
    git push origin feature/amazing-feature
  5. 提交一个拉取请求。