如何使用 netcat 发送不完整的 http 请求?

How to send an incomplete http request using netcat?

我想发送一个不完整的 http 请求,或者某种会暂时阻塞我的服务器的请求。我自己用 C 编写了服务器,目前它被设计为一次只接受一个客户端。我想测试一下是否确实如此

是否可以发送类似于 GET /HTTP/1.0 的简单内容?我只是在我的终端上进行所有测试,目前还没有使用任何其他东西。

是的,你可以用 netcat 做到这一点。

nc -c servername 80 <<<"GET / HTTP/1.0"

这将发送 GET 行,然后等待服务器响应。但是服务器应该在等待 headers 和结束它们的空行,所以它永远不会响应。所以 nc 将永远等待,保持连接打开。