bash - 如何使用脚本创建一个到 Stratum 的套接字?

标签 bash shell sockets curl

我正在尝试了解层协议(protocol),并想尝试连接到层池的初始步骤。我在 SlushPool 上创建了一个帐户,并想使用某种脚本建立连接(我认为是 bash)。所以我尝试了这个

curl -H "Content-Type: application/json" -X POST -d '{"id": 1, "method": "mining.subscribe", "params": []}\n' http://stratum.slushpool.com:3333

但我得到了答复
curl: (52) Empty reply from server

所以我似乎做错了什么,因为预期的结果应该是这样的
{"id": 1, "result": [["mining.notify", "ae6812eb4cd7735a302a8a9dd95cf71f"], "08000002", 4], "error": null}\n

如此处所述——https://github.com/ctubio/php-proxy-stratum/wiki/Stratum-Mining-Protocol .什么是我可以使用 bash 兼容脚本尝试地层连接的简单方法?

最佳答案

改用 netcat。

nc <address> <port number> 

连接后粘贴在
{"id": 1, "method": "mining.subscribe", "params": []}

按回车键,服务器应该会发送响应。问题是 curl正在执行 http 请求,而 stratum 基于纯 JSON api。

关于bash - 如何使用脚本创建一个到 Stratum 的套接字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48464611/

相关文章:

Linux bash - 输入格式

c - 如何处理 shell 命令过滤器的逻辑链?

linux - 将文件中的多个参数传递给 Shell 中的 while 循环

sockets - 放弃对EAGAIN的回复

sockets - HTTP 多部分/表单数据。当二进制数据没有字符串表示时会发生什么?

bash - bash 脚本中的 -e 和 -ne 是什么意思?

bash - 为什么交互式 shell 的子 shell 作为交互式 shell 运行?

linux - 如何删除基于列值的重复行?

bash - 如何在 Bash 中查找变量是否为空

sockets - RabbitMq 在 docker 中运行时拒绝连接