回声卷曲请求标题&身体没有发送?

时间:2011-05-30 19:39:37

标签: curl http-headers request httprequest echo

使用curl命令行工具,是否可以echo,打印或查看请求,而不是发送请求?有点像-n选项吗?我想看看请求标题&身体,以及其他任何内容。除了标题&之外还有其他什么吗?体?

2 个答案:

答案 0 :(得分:50)

HTTP request由请求行,标题和正文构成。

curl似乎没有做“干跑”的旗帜。根据您的需求,您可以使用netcat作为代理来查看所需内容:

$ nc -l localhost 8000 &
[1] 3150
$ curl --proxy localhost:8000 --silent --max-time 1 http://www.stackoverflow.com
GET http://www.stackoverflow.com HTTP/1.1
User-Agent: curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
Host: www.stackoverflow.com
Accept: */*
Proxy-Connection: Keep-Alive

[1]+  Done                    nc -l localhost 8000

答案 1 :(得分:22)

让我第二个建议使用'nc'(netcat)来查看所有细节而不向异地发送任何内容。

但您也可以使用--trace--trace-ascii命令获取任何curl命令行请求的所有详细信息,这些命令可以转储所有传入和传出的数据以及检查请求。

与“nc”相比,这些选项具有额外的好处,即使对于HTTPS操作和“真实”命令行等,它们也可以显示协议详细信息。