Ruby on rails Rails TCP套接字

Ruby on rails Rails TCP套接字,ruby-on-rails,ruby,sockets,tcp,tcpclient,Ruby On Rails,Ruby,Sockets,Tcp,Tcpclient,我正试图将字节数组发送到网络控制, 我从windows机器的hex终端发送数据,它工作正常,我得到了正确的响应,然后在Ubuntu上使用rails控制台进行了尝试 host = "192.168.1.100" port = 10001 Socket.tcp(host , ip) do |sock| sock.puts([0x01,0x00,0x00,0x00,0x00,0x21,0x04,0x61,0x64,0x6D,0x69,0x6E,0x00,0x00,0x00,0x00,0x00,0x00

我正试图将字节数组发送到网络控制, 我从windows机器的hex终端发送数据,它工作正常,我得到了正确的响应,然后在Ubuntu上使用rails控制台进行了尝试

host = "192.168.1.100"
port = 10001
Socket.tcp(host , ip) do |sock| sock.puts([0x01,0x00,0x00,0x00,0x00,0x21,0x04,0x61,0x64,0x6D,0x69,0x6E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x64,0x6D,0x69,0x6E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC8]) end
我的回答是零,当我尝试时

Socket.tcp(host , ip) do |sock| sock.write([0x01,0x00,0x00,0x00,0x00,0x21,0x04,0x61,0x64,0x6D,0x69,0x6E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x64,0x6D,0x69,0x6E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC8]) end
我得到了141作为响应,但正确的响应是00 00 01 00 01 FD 00 01 00 01 01 02 FB

我不知道有什么问题,有人能帮我吗?
提前感谢。

问题出在字节数组格式上,它应该以字符串的形式以这种格式发送 \x01\x00\x00\x00\x00\x00\x21\x04\x61\x64\x6D\x69\x6E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x61\x64\x6D\x69\x6E\x00\x00\x00\x00\x00 然后使用 响应=socket.recv 1000