curl常用参数详解及示例
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了curl常用参数详解及示例相关的知识,希望对你有一定的参考价值。
参考技术A curl是一个开源的命令行工具,它基于网络协议,对指定URL进行网络传输,得到数据后不任何具体处理(如:html的渲染等),直接显示在"标准输出"(stdout)上。curl支持的网络协议有很多,包括:DICT、FILE、FTP、FTPS、GOPHER、GOPHERS、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、MQTT、POP3、POP3S、RTMP、RTMPS、RTSP、SCP、SFTP、SMB、SMBS、SMTP、SMTPS、TELNET和TFTP。
curl的参数也有很多,下面介绍一些常用的参数,建议收藏保存。
当curl不带有任何参数时,curl默认发出 GET 请求,服务端返回的内容不会做任何解析直接在命令行显示。示例:
因为需要跳转到HTTPS,所以返回301:
使用 -d 参数时,header的 Content-Type 被自动赋值为 application/x-www-form-urlencoded ,并且发送 POST 请求。示例:
因为需要跳转到HTTPS,同样返回301:
发送json请求还需要用到两个参数: -X 参数指定 HTTP 请求的方法, -H 参数指定 HTTP 请求的header。示例:
其中, -X 参数指定 HTTP 请求的方法为 POST, -H 蚕食指定header的 Content-Type 为 application/json; charset=UTF-8 , -d 参数指定数据为 "user":"万猫学","pwd":"onemore" 。
-i 参数显示服务端响应内容的同时,也显示HTTP响应头。示例:
会先显示服务端的响应头,然后空一行,再显示服务端响应内容,如下:
-v 参数显示的整个响应过程,我们可以看到底层到底发生了什么。示例:
显示如下:
其中,以 * 开头的行表示curl提供的额外信息,以 > 开头的行表示请求头, < 开头的行表示响应头。
有时候响应内容太长,只关心响应头时,可以使用 -I 参数。示例:
显示如下:
以上是关于curl常用参数详解及示例的主要内容,如果未能解决你的问题,请参考以下文章