如何向在我的应用程序中监听的套接字发送一个字节(或多个字节)进行测试?

14
如何向监听应用程序端口的TCP套接字发送一个或多个字节进行测试?我的应用程序接收一个告诉它该做什么的单个字节。某些操作将接收其他字节进行更进一步的指示。
我已经尝试使用Telnet,但当我输入int值时,它似乎发送了int(4个字节)。
我只需要发送一个单独的字节(8位),而不是4个字节的序列。有没有简单的方法来测试我的套接字应用程序?我应该创建另一个应用程序来测试吗?

由于此问题目前已关闭(我进行了编辑并投票以重新打开),这是我的答案。您可以使用nc(在Linux,Cygwin,MobaXterm等上)并发送一个字节:echo -e'\ x04'| nc 127.0.0.1 1234 - 11101101b
2
要发送2个字节或更多,您可以使用: echo -e'\x04''\x03'| nc 127.0.0.1 1234 - 11101101b
2
你也可以使用Telnet来完成!要发送字节,只需键入相应的ASCII字符即可得到该字节。如果需要发送的字节小于可输入的字符,则按住Ctrl键并从ASCII值中减去64。运行:telnet 127.0.0.1 1234 进行连接,然后按下 Ctrl+D 发送0x04(因为D是0x68)。 - 11101101b
1个回答

15

你不应该使用telnet来完成这个任务。

更好的选择是使用netcat。

然后,通过bash管道传输你的命令。

例如:

echo -n 0x03 | nc 127.0.0.1 1234


5
我使用以下命令行:echo -e "\x30" | nc 127.0.0.1 1234 - ax003d

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接