ReactJS 不从产品上的智能合约(NEAR)调用方法(查看时测试网不存在)

Posted

技术标签:

【中文标题】ReactJS 不从产品上的智能合约(NEAR)调用方法(查看时测试网不存在)【英文标题】:ReactJS not call method from Smart Contract (NEAR) on product (testnet does not exist while viewing) 【发布时间】:2021-12-25 09:12:35 【问题描述】:

我成功部署了我的第一个应用程序(AssemblyScript + Reactjs),但是当我在 github-pages 上测试时,我得到了这个错误。

errors.js:18 Uncaught (in promise) Error: [-32000] Server error: account xxx.testnet does not exist while viewing
at json-rpc-provider.js:322
at async Object.e [as default] (exponential-backoff.js:7)
at async y.sendJsonRpc (json-rpc-provider.js:297)
at async y.query (json-rpc-provider.js:109)
at async _.viewFunction (account.js:366)

我用 near-cli 测试方法合同,没关系,所以我不明白为什么 web 不起作用。谢谢大家。

testnet does not exist while viewing

【问题讨论】:

【参考方案1】:

如果你将合约部署到测试网服务器(accountId 类似于 xxx.testnet),你应该删除process.env.NODE_ENVsrc/utils.js

const nearConfig = getConfig("development");

因为当你运行npm start 时,process.env.NODE_ENV 总是等于'development',当你运行npm test 时它总是等于'test',而当你运行npm run build 来制作一个生产包时,它总是等于“生产”。因此,如果nearConfig 是生产配置,则所有 url 都是主网服务器,而不是您部署合约的测试网服务器!

【讨论】:

以上是关于ReactJS 不从产品上的智能合约(NEAR)调用方法(查看时测试网不存在)的主要内容,如果未能解决你的问题,请参考以下文章

NEAR 智能合约错误:“合约未初始化”

如何让用户在前端部署 NEAR 协议智能合约?

NEAR 协议中存储的智能合约 WebAssembly 二进制文件在哪里/如何?

是否可以在 Rust 的 NEAR 智能合约中验证 NIST P-256 曲线?

星际文件系统与NEAR合作推出30万美元联合赠款计划

NEAR,如何实现撤销(汇编脚本)