php请求丢失的解决办法:1、给加密字串做urlencode处理再做发送;2、在curl中设置代理到fiddler的8888端口即可。
本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑
如何解决php 请求丢失问题?
php curl post请求丢失'+'问题
背景:
使用与友商做免登录授权的跳转,发现授权偶尔失败,经过日志查看,加密码中带'+'字符的会授权失败。
通过抓包发现是php 使用curl发送请求时 '+'会被转成空格(原因不明……怀疑是curl默认做了urldecode处理)
解决方法是:
先给加密字串做urlencode处理再做发送。
P.S.
另外https的请求在linux上面抓包解码似乎不太好处理,后面改在windows上用fiddler抓包,设置抓取https后发现从php代码中出去的请求还是没能抓到,需要在curl中设置代理到fiddler的8888端口才能成功抓取
curl_setopt($ch,CURLOPT_PROXY,'127.0.0.1:8888');
推荐学习:《PHP视频教程》
以上是如何解决php 请求丢失问题的详细内容。更多信息请关注PHP中文网其他相关文章!