【PHP CURL GET请求对方接口报HTTP Status 400 – Bad Request】

$url = "http://xxx.xxx.cn/xxx/xxx?startTime=2022-04-01 16:12:03&endTime=2022-04-14 16:12:03&deviceAddr=123456";

$header = [
    'token:'.$token
];
$res = $this->httpCurl($url, [], $header);

get请求直接报HTTP Status 400 – Bad Request,找了很久原因,开始以为是url太长什么的
但该来该去都是报错
后来才发现是因为url里面的时间原因
curl请求的时候是不允许一些特殊的字符的
所以参照一位博主的方法URL-encode一下请求的url就可以了

$data = [
    'startTime'=>$startTime,
    'endTime'=>$endTime,
    'deviceAddr'=>$deviceAddr,
];
$url = "http://xxx.xxx.cn/xxx/xxx?".http_build_query($data);


$header = [
    'token:'.$token
];
$res = $this->httpCurl($url, [], $header);

httpCurl就是我自己封装的普通的curl方法 data中就是get请求中需要的三个参数

感谢
方法来自这里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值