问下一个很奇怪的问题,同一个curlpost请求,不同方式不同结果?

情况是这样的,我对接了一个第三方系统的用户信息,用户请求我这边接口,然后我接口会去请求第三方系统的接口,获取到用户信息,
然后很奇怪的是,当是通过web请求时候,就能正常返回用户信息,然后当我用command命令里面去请求第三方系统的接口时候,参数都是一样的,这时候第三方就提示网络策略不符合,因为我需要定时去请求用户信息来更新用户信息,所以我就报错了?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 10

有些接口有校验需要你模拟web访问的,你直接curl会被判断出来

1个月前 评论
donggan (楼主) 1个月前
伽蓝幻梦 (作者) 1个月前

多半是header头不对

1个月前 评论

先抓一下web里面的curl 然后导入postman,对比一下header,多半就特定参数校验之类的

1个月前 评论

多半header头,User-Agent

1个月前 评论
curl_setopt($curl_reponse, CURLOPT_PROXY, $proxy_ip);
curl_setopt($curl_reponse, CURLOPT_PROXYPORT, $proxy_port);
curl_setopt($curl_reponse, CURLOPT_PROXYUSERPWD, "$Username:$Password");
curl_setopt($curl_reponse, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
// 代理设置抓包工具,抓包与浏览器正常访问的内容比较, 有差异的一个一个补齐
// 抓包工具 fiddler classic

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // 禁用证书验证

// 或将抓包根证书放到 证书文件中, 证书路径参考 ini_get('openssl.cafile'),当然也可以自定义证书路径

// 我一般用 guzzlehttp
1个月前 评论
sanders

可以通过控制台复制一下 这个请求的命令行表达方式

file

1个月前 评论
donggan (楼主) 1个月前
Dash007 1个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!