如何解决CRLF 导致来自套接字的 read() 返回
我正在用 C++ 编写一个 HTTP 服务器,使用 TCP 套接字在客户端和服务器之间进行通信。
在使用 Linux 终端向服务器发送请求时,我注意到每次按 Enter
时,服务器上的 read()
都会返回(它读取到 {{1} } 并返回)。
这种行为“正常”吗?我没有在任何地方找到它。
编辑:我使用 telnet 作为客户端和阻塞读取/接收
解决方法
只要有数据可用,就会返回阻塞的 read
或 recv
。如果您在在终端上用作客户端的任何内容(即 netcat、telnet 或类似的)上输入 Enter
,它很可能(取决于实际客户端)直接发送此 \r\n
到服务器,它将导致立即成功返回 read
/recv
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。