当我使用节点运行以下代码时,它能够连接到外部服务器。但是当我在 firebase 上部署这段代码时,它失败了。
const Web3 = require('web3');
var web3 = new Web3(new Web3.providers.HttpProvider("http://<my-server-ip>:8545"));
const functions = require('firebase-functions');
const express = require('express');
if(web3.isConnected()) {
console.log("Success")
} else {
console.log("Failure")
}
const app = express();
exports.app = functions.https.onRequest(app);
我验证了以下事项来解决此问题:
- rpc 服务器可从任何地方全局访问
- package.json 中写的 web3 版本是
"web3": "^0.18.4"