10-27 支付接口测试 return $signature错误
来源:10-27 统一测试订单与支付接口 十
吃了饿饿了又吃
2017-06-19
老师你好,为了完整的学完这个微信支付这块,是花了力气的,微信支付和支付宝支付都申请好了。
闲话不说,支付接口测试的时候,发现,getPaySignature的结果没有反馈给上一层方法(makeWxPreOrder),下面代码下划线那个$signature。
$rawValues成功返回,回到$signature,再按F10,就到了(zerg/thinkphp/library/think/App.php)break那里了,第三张图。不理解为啥不继续返回到上一层makeWxPreOrder()的getPaySignature($wxOrderData);
private function makeWxPreOrder($totalPrice){
//openid
$openid = Token::getCurrentTokenVar('openid');
if(!$openid){
throw new TokenException();
}
$wxOrderData = new \WxPayUnifiedOrder();
$wxOrderData->SetOut_trade_no($this->orderNO);
$wxOrderData->SetTrade_type('JSAPI');
$wxOrderData->SetTotal_fee($totalPrice*100); //微信是以分为单位的
$wxOrderData->SetBody('Zerg商城');
$wxOrderData->SetOpenid($openid);
$wxOrderData->SetNotify_url('http://qq.com'); //用于接收微信的回调结果
return $this->getPaySignature($wxOrderData);
}
// 调用微信的预订单的请求
private function getPaySignature($wxOrderData){
$wxOrder = \WxPayApi::unifiedOrder($wxOrderData);
if($wxOrder['return_code']!='SUCCESS'||
$wxOrder['result_code']!='SUCCESS'){
Log::record($wxOrder,'error');
Log::record('获取预支付订单失败','error');
}
// prepay_id
$this->recordPreOrder($wxOrder);
$signature = $this->sign($wxOrder);
return $signature;
}
3回答
-
你在控制器最终return回去结果的时候打个断点看看能过去吗?
052017-06-21 -
吃了饿饿了又吃
提问者
2017-06-20
图片左边是老师的视频截图,按想法应该一步一步往上return的。但回到这里时候,就跳到thinkphp/library/think/App.php了。
00 -
吃了饿饿了又吃
提问者
2017-06-20
这是小程序那反馈的错误信息。
00
相似问题