php guzzle 上传文件,关于guzzle表单本地文件上传的问题

请教各位一个问题。

最近在调试一个第三方的api,然后使用了guzzle做客户端,其中该api的一个请求参数需要使用本地图片的二进制数据,我翻了下guzzle的手册,然后查找了下文档http://guzzle-cn.readthedocs....,按照这上面的试了下,服务端一直提示说我的的请求解析出错,要我检查下content-type and body,试了很久也没解决,希望有熟悉的大神提点下,谢谢了。代码如下

$client = new Client();

$instance = sign::getInstance();

$url = 'http://XXXXX';

$sign = $instance->getSign();

//hearder头

$header = ['Host'=>'XXXXXXX','Content-Type'=>'multipart/form-data','Authorization'=>$sign];

//本地图片

$file = file_get_contents('D:\wamp64\www\whistles-master\test.jpg');

//body

$body = [

[

'name'=>'appid',

'contents'=>'XXXX'

],

[

'name'=>'bucket',

'contents'=>'XXXXX'

],

[

'name'=>'type',

'contents'=> 0

],

[

'name'=>'image',

'contents'=>fopen('D:\wamp64\www\whistles-master\test.jpg', 'r')

]

];

$res = $client->request('POST',$url, ['headers'=>$header,'multipart'=>$body]);

echo $res->getBody();

报错信息如下

GuzzleHttp\Exception\ClientException: Client error: `POST http://XXXXX` resulted in a `400 Bad Request` response: {"code":3,"message":"invalid request: parsing error - check content-type and body","data":{}} in D:\XXXXXXXXX\vendor\guzzlehttp\guzzle\src\Exception\RequestException.php on line 113

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值