failed to open stream: HTTP request failed! HTTP/1.1 505 HTTP Version Not Supported

PHP模拟GET请求支付宝退款链接(未用sdk  自己拼接的请求链接与参数);

起初用file_get_contents();就报错 :failed to open stream: HTTP request failed! HTTP/1.1 505 HTTP Version Not Supported!!!

换成 curl模拟get 请求 返回值为空 没错 直接没报错 返回空字符串,,,以为curl参数设置不对,各种试到怀疑人生

接着继续 获取  $info = curl_getinfo($ch); 查看信息

发现 http_code 为 505 ,查到说是 不支持 HTTP/1.1的有(此处肯定不是该原因) 也有说请求格式不对 要 去除空格

直接 对URL   preg_replace('# #','',$url) 再请求

接着  支付宝 又返回时间参数格式有错  也就是 yyy-MM-dd HH:mm:ss 中间的空格还不能没有  

看到一篇文章  解决了该问题 : https://blog.csdn.net/bianb123/article/details/81557300

preg_replace('# #','%20',$url);

再回头  无论 file_get_contents(); 还是curl 都可成功请求, 期待已久的  

"code":"10000","msg":"Success"

终于出来了

特此记录!

posted @   $wanggang  阅读(2585)  评论(3编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
历史上的今天:
2018-08-17 进程,线程与协程
点击右上角即可分享
微信分享提示