Logo
新用户订阅 RPC,首月享 6.5 折优惠查看优惠
RPC Assistant

如何在BNB测试网上获取和使用USDC

摘要

本文介绍如何在BNB智能链测试网上获取和使用USDC。涵盖原生USDC和桥接USDC的区别、如何通过水龙头获取测试网USDC或自行部署模拟合约,以及如何配置您的dApp与代币合约交互。

快速解答:在 BNB 测试网上获取 USDC

BNB 智能链测试网上的 USDC 是一种测试代币,模拟主网 USDC 稳定币的行为。它不是真实资产,没有货币价值。您可以通过水龙头获取,或者部署自己的模拟 USDC 合约,以便在开发过程中完全控制。

在您与 USDC 交互之前,需要一个可靠的 RPC 端点。OnFinality 为 BNB Chain 测试网提供公共端点:https://bnb-testnet.api.onfinality.io/public。对于需要更高速率限制和专用吞吐量的生产级测试,请考虑托管 RPC 服务专用节点

决策指南:哪种 USDC 方案适合您的测试?

您在 BNB 测试网上获取 USDC 的方式取决于您的测试目标:

  • 快速集成测试:使用水龙头获取桥接 USDC。速度快,无需部署合约。
  • 完全控制代币行为:部署您自己的模拟 USDC 合约。这允许您铸造任意数量并模拟边缘情况。
  • 使用真实代币地址测试:使用已知的桥接 USDC 合约地址,测试您的 dApp 与特定代币地址的集成。

如果您正在构建一个期望与主网 USDC 交互的 dApp,您应该使用桥接 USDC 地址进行测试,以确保您的合约逻辑处理正确的代币。如果您正在测试内部记账或 UI 逻辑,模拟代币通常更简单。

什么是 BNB 测试网上的 USDC?

USDC 是由 Circle 发行的 ERC-20 稳定币。在 BNB 智能链上,USDC 有两种形式:

  • 原生 USDC:由 Circle 直接在 BNB Chain 上发行。截至 2025 年,原生 USDC 已在 BNB Chain 主网上可用,但在测试网上,您通常会找到桥接版本。
  • 桥接 USDC:通过桥接协议(如 Axelar 或 Wormhole)从其他链包装而来。桥接代币具有不同的合约地址,并且可能具有不同的元数据。

在 BNB 测试网上,最常引用的 USDC 是桥接版本。始终验证您使用的合约地址,因为使用错误的地址可能导致交易失败或意外行为。

链设置和 RPC 端点

要与 BNB 测试网交互,请使用以下设置配置您的钱包或 dApp:

参数
网络名称BNB Smart Chain Testnet
RPC URLhttps://bnb-testnet.api.onfinality.io/public
链 ID97
符号tBNB
区块浏览器https://testnet.bscscan.com

如需更高速率限制的托管端点,请查看 BNB Chain 测试网网络页面

通过水龙头获取测试网 USDC

在 BNB 测试网上获取 USDC 的最简单方法是使用水龙头。一些社区水龙头会分发测试网 USDC。但是,水龙头可能不可靠或有限速。如果您找不到 USDC 水龙头,您通常可以从水龙头获取 tBNB,然后在测试网 DEX 上兑换为 USDC,或者您可以部署自己的 USDC 合约。

部署您自己的模拟 USDC

部署模拟 USDC 合约让您拥有无限的铸造能力。以下是一个您可以部署的简单 Solidity 合约:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract MockUSDC is ERC20 {
    constructor() ERC20("USD Coin", "USDC") {
        _mint(msg.sender, 1_000_000 * 10 ** decimals());
    }

    function mint(address to, uint256 amount) public {
        _mint(to, amount);
    }
}

使用 Remix、Hardhat 或 Foundry 部署此合约。部署后,您可以向任何地址铸造代币进行测试。

在您的 dApp 中使用 USDC

一旦您拥有 USDC,您可以使用标准的 ERC-20 方法与之交互。以下是一个使用 ethers.js 检查余额的示例:

const { ethers } = require("ethers");

const provider = new ethers.providers.JsonRpcProvider("https://bnb-testnet.api.onfinality.io/public");
const usdcAddress = "0x..."; // 替换为您的 USDC 合约地址
const wallet = new ethers.Wallet("0x...", provider); // 替换为您的私钥

const usdc = new ethers.Contract(
  usdcAddress,
  ["function balanceOf(address) view returns (uint256)"],
  wallet
);

async function main() {
  const balance = await usdc.balanceOf(wallet.address);
  console.log("USDC balance:", ethers.utils.formatUnits(balance, 18));
}

main();

请记住,BNB 测试网上的 USDC 可能有 18 位小数(如桥接版本)或 6 位小数(如原生 USDC)。始终检查代币的 decimals() 函数。

常见陷阱和故障排除

  • 错误的合约地址:在测试网上使用主网 USDC 地址将失败。始终在测试网浏览器上验证地址。
  • tBNB 不足以支付 gas:即使 USDC 是免费的,您也需要 tBNB 来支付交易费用。先从水龙头获取 tBNB。
  • RPC 速率限制:公共 RPC 端点有速率限制。如果您发出大量请求,请考虑托管 RPC 服务以避免限流。
  • 代币小数位不匹配:如果您的 dApp 假设 6 位小数,但代币使用 18 位,余额会显得膨胀。始终动态获取代币的小数位。

关键要点

  • BNB 测试网上的 USDC 是测试代币,不是真实货币。
  • 您可以通过水龙头或部署自己的模拟合约来获取。
  • 使用正确的合约地址和小数位进行测试。
  • 可靠的 RPC 端点对于顺利测试至关重要;考虑 OnFinality 的公共端点专用节点以获得更高吞吐量。

常见问题解答

问:BNB 测试网上的 USDC 与主网 USDC 相同吗? 答:不同。测试网 USDC 是测试代币,没有价值。合约地址和可能的小数位与主网不同。

问:我可以在测试网上使用主网 USDC 合约地址吗? 答:不可以。您必须使用测试网特定的合约地址。使用主网地址会导致错误。

问:如何获取 tBNB 作为 gas? 答:使用 BNB 测试网水龙头。许多水龙头可在线获取;搜索“BNB testnet faucet”或查看 BNB Chain 测试网网络页面获取资源。

问:如果 USDC 水龙头不可用怎么办? 答:如上所示部署您自己的模拟 USDC 合约。这为您提供无限代币,是开发中的常见做法。

问:为什么我的 USDC 余额显示一个巨大的数字? 答:这可能是小数位不匹配。代币可能使用 18 位小数而不是 6 位。检查代币的 decimals() 函数并相应调整您的格式。

RPC 知识库

相关 RPC 内容

RPC 提供商选择Stellar

如何为 Soroban 应用选择 Stellar RPC 提供商?

Stellar RPC 让你能够实时访问 Stellar 网络数据,用于 Soroban 智能合约、账户余额和交易提交。不同提供商在网络覆盖、归档支持、专用节点访问和定价方面有所差异,因此正确选择取决于你的应用工作负载。 本指南介绍了什么是 Stellar RPC、需要比较的功能,以及如何在做出承诺...

网络 RPCSolana

什么是 Solana API,如何使用它?

# Solana API 指南:RPC 端点、方法及最佳实践 Solana API 是一个 JSON-RPC 接口,允许开发者与 Solana 区块链交互。它提供了读取网络状态、发送交易、模拟执行以及订阅实时更新的方法。本指南涵盖了核心 API 方法、如何连接到不同集群,以及为生产应用选择可靠 RP...

网络 RPCOptimism

Optimism 端点:链设置、连接和调试

Optimism 端点是 JSON-RPC URL,可让您的 dApp 或后端在 OP Mainnet 或 OP Sepolia 上读写数据。本文涵盖确切的链设置、如何通过 curl 或 ethers.js 连接,以及如何调试常见的端点故障。...

RPC 提供商选择Solana

在租用专用 Solana 节点之前,您应该评估哪些方面?

专用 Solana 节点为您提供具有隔离资源的私有 RPC 端点,这有助于那些超出共享速率限制或需要自定义节点配置的团队。本文解释了专用节点实际改变了什么、何时值得付出成本,以及如何比较提供商而不会为不需要的功能多付钱。...

RPC 提供商选择Arbitrum

什么是Arbitrum RPC,如何选择合适的端点?

Arbitrum RPC端点是dApp、钱包和索引器与Arbitrum One、Nova或测试网通信的网关。本文涵盖链设置、公共与私有端点、排序器行为以及为生产环境选择可靠RPC提供商的标准。...

RPC 提供商选择Ethereum

什么是以太坊 API 服务,如何选择?

以太坊 API 服务为您的 dApp、索引器或后端提供了一种可靠的方式来读写区块链数据,而无需运行自己的节点。这些服务通过 HTTPS 和 WebSocket 暴露 JSON-RPC 端点,并通常提供诸如归档数据、跟踪方法和分析等便利功能。...

永远不用担心基础设施

OnFinality 消除了 DevOps 的繁重工作,让您能够更聪明、更快地构建。

开始