LuckyHu Blog

Home MyGame MyApp About

curl调试常用http和https接口

17 Apr 2015

最近经常会和后端调试一些http和https的接口,发现自己在app代码里面来调试实在是效率太低了,还是先用命令行调试好了再写代码比较好,curl应该是做这个最好的工具了。

先在网上搜了一下,果然已经有人写过类似的东西了,可以看这里http://stormzhang.com/devtools/2014/11/07/use-curl-debug/,但我觉得这篇文章还说得不太全,https和auth之类的东西都没有涉及,但在实际工作中肯定会经常遇到这两种接口。

官方教程见这里(http://curl.haxx.se/docs/httpscripting.html#POST),但很多不是常用

常用参数 -o [path] 把结果保存到文件 -I 只显示请求相应的头部信息 -v 显示整个通信过程 –trace|–trace-ascii 更详细的通信过程 –referer [url] 表示从哪里跳转过来的 –user-agent [info] 增加useragent信息 –header [info] 增加头信息

常用请求方式

1.GET curl url 参数加在url里就可以了,我没有发现有对后面的url编码的选项,我估计默认会自动给你进行url编码的

2.POST curl -d|–data “key=value&” [url] 把post的数据作为一个字符串,用-d参数就可以了 如果需要对post数据部分做url编码,可以这样 curl –data-urlencode “key=value&” [url]

3.POST 上传文件 如果你需要用http post multipart/form-data的方式上传文件,也可以轻松用curl实现 比如你要传一个类似下面表单的文件:

<input type=file name=upload> <input type=submit name=press value="OK">

curl –form upload=@localfilename –form press=OK [URL]

(未完待续)