easywechat 6.x 回調(diào)報錯,雖然解決了問題,回調(diào)業(yè)務(wù)也正常,但還一直報錯。 我只要是不看日志就不會影響我業(yè)務(wù),作為一個有責(zé)任心的程序員我希望徹底的解決這個問題??,于是我去easywechat提問, 終于大佬的幫助下回調(diào)問題成功的解決了。
easywechat 是php-fig標(biāo)準(zhǔn)。webman是自定義,還是需要一個兼容層去做轉(zhuǎn)換的事情
use EasyWeChat\Pay\Application;
use EasyWeChat\Pay\Message;
use Symfony\Component\HttpFoundation\HeaderBag;
use Symfony\Component\HttpFoundation\Request as SymfonyRequest;
$app = new Application($config);
$symfony_request = new SymfonyRequest( $request->get(),$request->post(),[],$request->cookie(),[],[],$request->rawBody() );
$header = $request->header();
$symfony_request->headers = new HeaderBag( $header );
$app->setRequestFromSymfonyRequest($symfony_request);
$server = $app->getServer();
$server->handlePaid(function (Message $message, \Closure $next) {
// $message->out_trade_no 獲取商戶訂單號
// $message->payer['openid'] 獲取支付者 openid
// 注意:推送信息不一定靠譜哈,請務(wù)必驗(yàn)證
// 建議是拿訂單號調(diào)用微信支付查詢接口,以查詢到的訂單狀態(tài)為準(zhǔn)
return $next($message);
});
// 默認(rèn)返回 ['code' => 'SUCCESS', 'message' => '成功']
$response = $server->serve();
return response($response->getBody(), 200, $response->getHeaders());
在這里特別感謝webman團(tuán)隊(duì)和@yzh52521大佬的幫助。??????
$app = new Application($config);
$symfony_request = new SymfonyRequest($request->get(), $request->post(), [], $request->cookie(), [], [], $request->rawBody());
$header = $request->header();
$symfony_request->headers = new HeaderBag($header);
$app->setRequestFromSymfonyRequest($symfony_request);
$server = $app->getServer();
$server->handlePaid(function (Message $message, \Closure $next) {
//file_put_contents(runtime_path('/pay/pay_info.txt'),print_r($message,true));
dd(12);
return $next($message);
});我也是這么處理的,還是沒有走到dd(12)這里
感謝大佬分享,解決了我的問題