新手问答 keosd 的 rpc 接口不能通过公网 ip 访问吗

eoshily · July 02, 2018 · Last by timbrown replied at September 08, 2018 · 4944 hits

我在阿里云上搭了个节点,启动了 keosd,但是似乎 keosd 的 rpc 接口只能用localhost127.0.0.1访问,而通过阿里云的公网无法访问。 比如curl 127.0.0.1:8989/v1/wallet/list_wallets是好的,而curl 39.104.76.10:8989/v1/wallet/list_wallets就无法返回,39.104.76.10是阿里云公网 ip。 有大神帮忙回答一下吗?

启动的时候默认 host 是 127.0.0.1, 所以外网访问不了, 另外钱包相关的接口, 强烈建议不要外网访问.

strahe 回复

我修改了默认的 host。这个是测试用的,所以我想通过外网访问一下。

你要在 config.ini 中设置 http-server-address = 39.104.76.10:8989 或者 nodeos --http-server-address = 39.104.76.10:8989

EOSMJ 回复

我说的是 keosd 呢不是 nodeos,我启动 keosd 时指定了--http-server-address = 0.0.0.0:8989也是不行。你有试过可以通过公网(不是局域网或者127.0.0.1)进行 rpc 访问 keosd 吗

之前似乎听说 keosd 只能在本地访问,不知道是不是这样的,谁能解答下吗

strahe 回复

另外想问下,不通过外网访问,那涉及钱包的 rpc 操作,比如sign_transaction,在网站后台怎么处理呢?通过Node.js?

可以了,我打开了阿里云 ECS 的安全组设置 8989 端口允许访问,然后重启服务器后发现 Ok 了⚽ 🚍 🎥 📛 😀

hi, eoshily. 我启动了 kesod 服务, 然后在本机上用 curl 命令 ( curl --request POST --url http://127.0.0.1:8899/v1/wallet/xx) 操作钱包, 但是返回错误。 我看你后来按照这个思路成功了, 不知道我这儿要如何操作呢?

readygo586 回复

贴一下你的错误信息看看

你好!我也是这个问题,公网无法访问,但是我在阿里云上把端口的开放了,但还是无法访问,请问你是怎么设置的呢

hyskoa 回复

wallet 的--http-server-address设 127 或 localhost 外网就访问不了

楼主好,我也是在搭建 keosd 与 rpc 的接口遇到相同的问题,请问你的运行 keosd 的命令是什么? 是开放了端口的,我这边外网访问 rpc 的错误是 400

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up