getInitCore($orderNo, $total); $body['payer'] = ['openid' => $openId]; $body['scene_info'] = ['payer_client_ip' => $payer_client_ip]; $sign = $this->signature('POST', '/v3/pay/transactions/jsapi', $json = json_encode($body, JSON_UNESCAPED_UNICODE)); $client = $this->createClient($sign, $json); $client->post('/v3/pay/transactions/jsapi'); $client->close(); $json = json_decode($client->getBody(), TRUE); if (!isset($json['prepay_id'])) { throw new Exception('微信支付调用失败: ' . $client->getBody()); } return $this->createResponse($json, $body); } }