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

eoshily · 2018年07月02日 · 最后由 timbrown 回复于 2018年09月08日 · 703 次阅读

我在阿里云上搭了个节点,启动了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。
有大神帮忙回答一下吗?

共收到 12 条回复

启动的时候默认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

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册