兰林
兰林
# F ### -f 参数用来关闭失败时的输出错误 ```shell curl -f https://google.com ``` 该参数设置当 HTTP 请求失败时不输出错误。 这主要是为了使脚本等能更准确的识别错误,而不会因为错误输出受到干扰。 ### -F 参数用来向服务器上传二进制文件。 ```shell curl -F '[email protected]' https://google.com/profile ``` 上面命令会给 HTTP 请求加上标头 Content-Type: multipart/form-data,然后将文件 photo.png 作为...
# G ### -G 参数用来构造 URL 的查询字符串 ```shell curl -G -d 'q=kitties' -d 'count=20' https://google.com/search ``` 上面命令会发出一个 GET 请求,实际请求的 URL 为 https://google.com/search?q=kitties&count=20 如果省略 --G,会发出一个 POST 请求。 如果数据需要 URL 编码,可以结合 --data--urlencode...
# H ### -H 参数添加 HTTP 请求的标头。 ```shell curl -H 'Accept-Language: en-US' https://google.com ``` 上面命令添加 HTTP 标头Accept-Language: en-US。 ```shell curl -H 'Accept-Language: en-US' -H 'Secret-Message: xyzzy' https://google.com ``` 上面命令添加两个 HTTP...
# I ### -i 参数打印出服务器回应的 HTTP 标头。 ```shell curl -i https://www.example.com ``` 上面命令收到服务器回应后,先输出服务器回应的标头,然后空一行,再输出网页的源码。 ### -I 参数向服务器发出 HEAD 请求,然会将服务器返回的 HTTP 标头打印出来。 ```shell curl -I https://www.example.com ``` 上面命令输出服务器对 HEAD 请求的回应。 --head 参数等同于...
# K ### -k 参数指定跳过 SSL 检测。 ```shell curl -k https://www.example.com ``` 上面命令不会检查服务器的 SSL 证书是否正确。
# L ### -L 参数会让 HTTP 请求跟随服务器的重定向。curl 默认不跟随重定向。 ```shell curl -L -d 'tweet=hi' https://api.twitter.com/tweet ``` --limit-rate 用来限制 HTTP 请求和回应的带宽,模拟慢网速的环境。 ```shell curl --limit-rate 200k https://google.com ``` 上面命令将带宽限制在每秒 200K 字节。
# O ### -o 参数将服务器的回应保存成文件,等同于wget命令。 ```shell curl -o example.html https://www.example.com ``` 上面命令将www.example.com保存成example.html。 ### -O 参数将服务器回应保存成文件,并将 URL 的最后部分当作文件名。 ```shell curl -O https://www.example.com/foo/bar.html ``` 上面命令将服务器回应保存成文件,文件名为bar.html。
# S ### -s 参数将不输出错误和进度信息。 ```shell curl -s https://www.example.com ``` 上面命令一旦发生错误,不会显示错误信息。不发生错误的话,会正常显示运行结果。 如果想让 curl 不产生任何输出,可以使用下面的命令。 ```shell curl -s -o /dev/null https://google.com ``` ### -S 参数指定只输出错误信息,通常与 -s 一起使用。 ```shell curl -S -o...
# U ### -u 参数用来设置服务器认证的用户名和密码。 ```shell curl -u 'bob:12345' https://google.com/login ``` 上面命令设置用户名为bob,密码为12345,然后将其转为 HTTP 标头 Authorization: Basic Ym9iOjEyMzQ1。 curl 能够识别 URL 里面的用户名和密码。 ```shell curl https://bob:[email protected]/login ``` 上面命令能够识别 URL 里面的用户名和密码,将其转为上个例子里面的 HTTP 标头。...
# V ### -v 参数输出通信的整个过程,用于调试。 ```shell curl -v https://www.example.com ``` --trace 参数也可以用于调试,还会输出原始的二进制数据。 ```shell curl --trace - https://www.example.com ```