我正在尝试通过 websocket 连接到我的 RSK 节点:
wscat -c ws://localhost:4445/websocket
但是,我得到了这个结果:Error: connect ECONNREFUSED 127.0.0.1:4445
。
文档说 websocket4445
默认监听端口。
如何正确连接?
默认情况下禁用 Websocket。请参阅RSKj 配置参考
要在 RSKj 上启用 websocket: (1)在启动 RSKj 时添加-Drpc.providers.web.ws.enabled=true
到您的命令中。java
(2) 更新配置文件。该文件以mainnet.conf
RSK 主网命名。
您的配置文件应如下所示:
rpc {
providers : {
web: {
cors: "*",
http: {
enabled: true,
bind_address = "0.0.0.0",
hosts = ["localhost", "127.0.0.1"],
port: 4444,
}
ws: {
enabled: true,
bind_address: "127.0.0.1",
hosts = ["localhost", "127.0.0.1"],
port: 4445,
}
}
}
...
}
在此之后,重新启动您的 RSKj 以使配置生效。现在,如果您从问题中重复相同的命令:
wscat -c ws://localhost:4445/websocket
您应该能够建立连接。
您正在尝试以正确的方式连接。
但是,请确保您有权连接到此端口,
例如,
rpc.providers.web.ws.bind_address=127.0.0.1
或者
rpc.providers.web.ws.bind_address=0.0.0.0
rpc.providers.web.ws.enabled=true