内容简介:直接在如果要把这个网页保存下来,可以使用默认直接请求一个
直接在 curl
命令后加上网址,就可以看到网页源码。我们以网址 www.baidu.com
为例
curl www.baidu.com
如果要把这个网页保存下来,可以使用 -o
参数,这就相当于使用 wget
命令了
curl -o [文件名] http://www.baidu.com # 或者 curl http://www.baidu.com > [文件名] # eg: curl -o /home/baidu.html baidu.html # eg: curl http://www.baidu.com > baidu.html
二、发送请求
2.1 GET请求
默认直接请求一个 url
就是发出一个 get
请求,参数的话直接拼接在 url
里就好了,如
# 请求会上百度发起一条查询请求,参数是wd=curl curl http://www.baidu.com/s?wd=curl
2.2 POST请求
普通post请求
curl -d "name=test&page=1" http://www.baidu.com
-d
参数指定表单以 POST
的形式执行。
三、HTTP方法
curl
默认的 HTTP
方法是 GET
,使用 -X
参数可以支持其他动词。
curl -X POST www.example.com curl -X DELETE www.example.com
四、自动跳转
有的网址是自动跳转的。使用 -L
参数, curl
就会跳转到新的网址。
curl -L http://item.taobao.com/item.htm?id=25823396605
键入上面的命令,结果就自动跳转为 http://detail.tmall.com/item.htm?id=25823396605
五、显示头信息
-i
参数可以显示 http
response
的头信息,连同网页代码一起。( -I
参数则是只显示 http
response
的头信息)
curl -i http://www.baidu.com curl -I http://www.baidu.com
六、显示通信过程
-v
参数可以显示一次 http
通信的整个过程,包括端口连接和 http
request
头信息
curl -v www.baidu.com
* Rebuilt URL to: www.baidu.com/ * Trying 119.75.217.26... * TCP_NODELAY set * Connected to www.baidu.com (119.75.217.26) port 80 (#0) > GET / HTTP/1.1 > Host: www.baidu.com > User-Agent: curl/7.54.0 > Accept: */* > < HTTP/1.1 200 OK < Server: bfe/1.0.8.18 < Date: Mon, 24 Dec 2018 15:36:19 GMT < Content-Type: text/html < Content-Length: 2381 < Last-Modified: Mon, 23 Jan 2017 13:27:36 GMT < Connection: Keep-Alive < ETag: "588604c8-94d" < Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform < Pragma: no-cache < Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/ < Accept-Ranges: bytes
如果你觉得上面的信息还不够,那么下面的命令可以查看更详细的通信过程
curl --trace output.txt www.baidu.com
七、Referer字段
有时你需要在 http
request
头信息中,提供一个 referer
字段,表示你是从哪里跳转过来的:
curl --referer http://www.baidu.com http://www.baidu.com
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
精通Android游戏开发
[美] Vladimir Silva / 王恒、苏金国 等 / 人民邮电出版社 / 2011-2 / 45.00元
作为引领移动技术潮流的软件平台,Android发布了NDK以支持Java和C的混合开发,使PC游戏可以在Android平台上焕发更多魅力。 本书是为那些在Android游戏开发工作中寻求突破的人准备的。书中不仅通过Space Blaster和Asteroids这两个炫酷 的街机游戏深入介绍了如何从头构建纯Java游戏,更详细展示了如何将PC上的3D经典游戏Doom和Wolfenstein 3......一起来看看 《精通Android游戏开发》 这本书的介绍吧!