IT袋

当前位置:主页 > 经验教程 > 建站编程 >

curl命令怎么用

curl命令怎么用 curl常用命令及参数详解(7)

更新:2023-08-11 17:28:08 来源:IT袋 作者:马勇
导读:curl命令怎么用,将 HTTP 标头存储在单独的文件中(示例中为 headers.txt): curl --dump-header headers.txt curl.se 请注意,如果您希望 curl 使用服务器发送的 cookie,则存储在单独文

curl命令怎么用

将 HTTP 标头存储在单独的文件中(示例中为 headers.txt):

  curl --dump-header headers.txt curl.se
请注意,如果您希望 curl 使用服务器发送的 cookie,则存储在单独文件中的标头在以后会很有用。更多关于 cookie 部分的信息。

发布 (HTTP)

使用 curl 发布数据很容易。这是使用-d <data>选项完成的。帖子数据必须是 urlencoded。

发布一个简单的“姓名”和“电话”留言簿。

curl -d "name=Rafael%20Sagula&phone=3320780" http://www.where.com/guest.cgi

如何使用 curl 发布表单,第 1 课:

挖掘出<input>您要填写的表单中的所有标签。

如果有一个“正常”的帖子,你-d就用来发帖。-d采用完整的“帖子字符串”,格式为

<variable1>=<data1>&<variable2>=<data2>&...
“变量”名称是标签中设置的名称"name=",<input>数据是您要为输入填写的内容。数据必须经过正确的 URL 编码。这意味着你用 + 替换空格,用 %XX 替换奇怪的字母,其中 XX 是字母 ASCII 代码的十六进制表示。

例子:

(页面位于http://www.formpost.com/getthis/)

<form action="post.cgi" method="post">
<input name=user size=10>
<input name=pass type=password size=10>
<input name=id type=hidden value="blablabla">
<input name=ding value="submit">
</form>
我们想输入用户 'foobar' 和密码 '12345'。

要发布到此,您输入 curl 命令行,如:

curl -d "user=foobar&pass=12345&id=blablabla&ding=submit"
  http://www.formpost.com/getthis/post.cgi
虽然-d使用 application/x-www-form-urlencoded mime-type,通常被 CGI 和类似理解,curl 还支持更强大的 multipart/form-data 类型。后一种类型支持文件上传之类的东西。

-F接受参数,如-F "name=contents". 如果要从文件中读取内容,请使用@filenameas contents。指定文件时,还可以通过附加;type=<mime type>到文件名来指定文件内容类型。您还可以在一个字段中发布多个文件的内容。例如,字段名称 'coolfiles' 用于发送三个具有不同内容类型的文件,使用以下语法:

curl -F "coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html"
  http://www.post.com/postit.cgi
如果没有指定 content-type,curl 将尝试从文件扩展名中猜测(它只知道几个),或者使用先前指定的类型(如果在列表中指定了多个文件,则从较早的文件中),否则它将使用默认类型“application/octet-stream”。

用 模拟填写表格-F。假设您在表单中填写了三个字段。一个字段是要发布的文件名,一个字段是您的姓名,一个字段是文件描述。我们要发布我们编写的名为“cooltext.txt”的文件。要让 curl 代替您喜欢的浏览器发布这些数据,您必须阅读表单页面的 HTML 源代码并找到输入字段的名称。在我们的示例中,输入字段名称是“file”、“yourname”和“filedescription”。

相关阅读