小程序
小游戏
企业微信
微信支付
扫描小程序码分享
https:\/\/api.mch.weixin.qq.com\/v3\/transfer\/batches response:\n{\"code\":\"PARAM_ERROR\",\"detail\": {\"location\":\"body\",\"value\": {\"openid\":\"oBpV57SNxQXJy5VOhFelSku4R3Nw\",\"out_detail_no\":\"mxwx (truncated...)\n","file":
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
Guzzle\Psr7\Message::bodySummary 有一个比较隐匿的bug,就是打印summary日志的时候,会按120字节截取字符串,如果碰到中文字符就有可能引发malformed utf-8半字符不可识别故障,详情可见 https://github.com/guzzle/psr7/issues/588,建议用 (string)$exception->getResponse()->getBody() 语句代替,可查看完整服务端返回信息
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
try {
$resp = $instance
->chain('v3/pay/transactions/native')
->post(['json' => [
'mchid' => '1900006XXX',
'out_trade_no' => 'native12177525012014070332333',
'appid' => 'wxdace645e0bc2cXXX',
'description' => 'Image形象店-深圳腾大-QQ公仔',
'notify_url' => 'https://weixin.qq.com/',
'amount' => [
'total' => 1,
'currency' => 'CNY'
],
]]);
echo $resp->getStatusCode(), PHP_EOL;
echo (string) $resp->getBody(), PHP_EOL;
} catch (\Exception $e) {
// 进行错误处理
echo $e->getMessage(), PHP_EOL;
if ($e instanceof \GuzzleHttp\Exception\RequestException && $e->hasResponse()) {
$r = $e->getResponse();
echo $r->getStatusCode() . ' ' . $r->getReasonPhrase(), PHP_EOL;
echo (string) $r->getBody(), PHP_EOL, PHP_EOL, PHP_EOL;
}
echo $e->getTraceAsString(), PHP_EOL;
你把返回body完整打印出来就知道错在哪里了
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
Guzzle\Psr7\Message::bodySummary 有一个比较隐匿的bug,就是打印summary日志的时候,会按120字节截取字符串,如果碰到中文字符就有可能引发malformed utf-8半字符不可识别故障,详情可见 https://github.com/guzzle/psr7/issues/588,建议用 (string)$exception->getResponse()->getBody() 语句代替,可查看完整服务端返回信息
try {
$resp = $instance
->chain('v3/pay/transactions/native')
->post(['json' => [
'mchid' => '1900006XXX',
'out_trade_no' => 'native12177525012014070332333',
'appid' => 'wxdace645e0bc2cXXX',
'description' => 'Image形象店-深圳腾大-QQ公仔',
'notify_url' => 'https://weixin.qq.com/',
'amount' => [
'total' => 1,
'currency' => 'CNY'
],
]]);
echo $resp->getStatusCode(), PHP_EOL;
echo (string) $resp->getBody(), PHP_EOL;
} catch (\Exception $e) {
// 进行错误处理
echo $e->getMessage(), PHP_EOL;
if ($e instanceof \GuzzleHttp\Exception\RequestException && $e->hasResponse()) {
$r = $e->getResponse();
echo $r->getStatusCode() . ' ' . $r->getReasonPhrase(), PHP_EOL;
echo (string) $r->getBody(), PHP_EOL, PHP_EOL, PHP_EOL;
}
echo $e->getTraceAsString(), PHP_EOL;
}
你把返回body完整打印出来就知道错在哪里了