setAlipayPublicKey($alipay['alipay_key']); $result = $Pay->rsaCheck($_POST, $_POST['sign_type']); if ($result === true && $_POST['trade_status'] == 'TRADE_SUCCESS') { $out_trade_no = input('out_trade_no', ''); if (($count = strpos(input('out_trade_no'), '_')) !== false) { $out_trade_no = substr(input('out_trade_no'), $count + 1); } parse_str(input('passback_params'), $attach); (new Hook(PaymentRepositories::class, 'wechat'))->listen($attach['attach'], $out_trade_no); echo 'success'; exit(); } else { echo 'error'; exit(); } } public function sdNotify(Request $request) { $post = $request->post(); $data = json_decode($post['data']); $sing = json_decode($post['sign']); // $client = new AliLife(); // //验签 // try { // $verifyFlag = $client->verify($data, $sing); // if (!$verifyFlag) throw new Exception('签名失败'); // } catch (\Exception $e) { // exit('签名失败'); // } if ($data->body->orderStatus == 1) { $order = strstr($data->body->orderCode, '-', -1); if (StoreOrder::be(['order_id' => $order, 'paid' => 1])) return true; $res = StoreOrder::paySuccess($order, 'sdpay'); if ($res){ echo 'respCode=000000'; exit(); }else{ echo 'error'; exit(); } } echo 'error'; exit(); } }