仅卷曲帖子数据和标题


74

我只想从curl请求中获取标头

curl -I www.google.com

都好 现在我想这样做,但也要传递帖子数据:

curl -I -d'test=test' www.google.com

但是我得到的是:

Warning: You can only select one HTTP request!

有人知道如何执行此操作,还是我在做一些愚蠢的事情?

Answers:


117

-I选项告诉curl进行HEAD请求,而该-d'test=test'选项告诉curl进行POST,因此您要告诉curl进行两种不同的请求类型。

curl -s -d'test=test' -D- -o/dev/null www.google.com 

或者,在Windows上:

curl -s -d'test=test' -D- -onul: www.google.com 

据我所知,这是最简洁的方法。选项包括:

  • -D--像这样将标头转储到列出的文件或传递时的标准输出。
  • -o/dev/null将正文发送到列出的文件。在这里,我们丢弃主体,所以我们只看到标题。
  • -s 静音(无进度条)

14
标记含义的解释将有所帮助
Madbreaks'Apr 4'12

8
-s:静默(无进度条) -d <数据>:使用给定的查询字符串执行POST -D <文件>:转储文件到文件头(传递-时为stdout)-o <文件>:输出对文件的响应手册仍然引用了所有这些标志。
拉斐尔2012年

如果有人想在Windows上运行此程序,请替换-o/dev/null-o nul(在Windows XP中经过测试)。
2012

30

-d表示您正在通过POST方法发送表单数据。-I表示您只是通过窥视元数据HEAD

我建议

  • 下载到/dev/null并将标题通过写入-D headerfile文件headerfile
  • 用于-i将标题包含在答案中,并从第一个空行跳过所有内容。

我知道是旧的,但是我建议增加-s一点清理输出。
rossipedia 2010年

哇,是的-i,正是我认为每个人都在寻找的东西。为什么其他答案更复杂?我确定这里有些细微差别。
科迪·赖希特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.