Fiddler抓包调试
用fiddler进行远程调试,只要能访问到装有fiddler的机器能进行抓包调试,包括手机、Pad、电脑。
本地Curl代码也是能用fiddler进行调试的。
起源于原来运行得很到的代码,要整合进项目,使用了Guzzle进行重构。模拟登陆死活不成功。
一步步排查,最后使用fiddler调试,排除变量法,终于找到问题:因为模拟登陆的带有验证码,为了方便调试,简单的写了个登陆页面,账号密码都是写死在html里的,but。。。LastPass识别了的我登陆表单,自动给我替换成了其他密码!俩天时间。。。简直像绣花一样难受。
之前使用过Guzzle,现在出了新版本6,向PSR7靠拢了,这个是趋势,所以更新了版本,改动挺大的,以前用过的一些函数都没了。特别在cookies这一块,学习久了点。总体上结构简单多了。该项目已经被drupal整合到核心模块里面去了,应该还是蛮可靠的。
HTTP抓包
Fiddler主菜单 -> Tools -> Fiddler Options-> Connections->选中Allowremote computers to connect
装有fiddler的机器,找出能远程访问的IP,一般局域网内也就是本机IP。
被抓包调试的设备在网络代理那里启用代理->代理IP就是上面说的IP->端口号默认为8888(可以在fiddler中Connections标签页修改)
这样就OK了。
HTTPS抓包
Fiddler主菜单 -> Tool->Fiddler Options->HTTPS -> 选中decrypt https traffic和ignore server certificate errors
会提示你安装证书,必要要安装。
然后同HTTP抓包一样操作
Curl抓包
根据你的Curl请求类型,按照上面设置好fiddler。
增加(默认端口为8888,依据实际情况修改)
curl_setopt($ch,CURLOPT_PROXY,'xxx.xxx.xxx.xxx:8888');//设置代理服务器
这样就好了。
fiddler还有劫持和模拟请求等功能,是个很强大的工具,可以学习了解。
本作品由 程小白 创作,采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可,可自由转载、引用但需署名作者且注明文章出处。
原文地址:https://www.chengxiaobai.cn/skills/fiddler-capture-debugging.html
[...]Guzzle 是一个非常强大而且稳定的 http client。不同于一般的 cURL 封装组件, Guzzle 内部使用了多种请求方式,来实现 http 请求,cURL 只是最常用的方式,并且 Guzzle 提供了强大的异步、并发功能,使得构建一个 http 请求十分容易而且易拓展。现在 Guzzle 已经被 drupal 整合到核心模块中了,可靠性不言而喻。Guzzle 目前使用了 Psr7 [...]