支付过程中出现了问题,请发送工单联系管理员处理。'; $button_text = '联系管理员'; $button_link = 'mailto:pghkipy@gmail.com'; } } else { // 签名验证失败 $message = '签名无效'; $alert_class = 'alert-danger'; $icon = 'fas fa-exclamation-circle'; $additional_info = '签名验证失败,请联系管理员。'; $button_text = '联系管理员'; $button_link = 'mailto:pghkipy@gmail.com'; } // HTML 页面开始 ?> 支付结果 - DokiDoki CDN 心跳网络

$v) { if ($k != "sign" && $k != "sign_type" && $v !== '' && $v !== null) { $signStr .= $k . '=' . $v . '&'; } } $signStr = rtrim($signStr, '&'); $signStr .= $key; return md5($signStr); } function set_order_success($order_no){ global $config; $auth_info = [ "type"=> "admin", "accessKeyId"=> $config['goedge_access_id'], "accessKey"=> $config['goedge_access_key'] ]; $access_token_json = sendPostJson($config['goedge_api_url']."/APIAccessTokenService/getAPIAccessToken",json_encode($auth_info,true),"none"); $access_token_obj = json_decode($access_token_json,true); if (isset($access_token_obj['data']['token'])) { $token = $access_token_obj['data']['token']; $code = ["code"=>$order_no]; $finish_order = sendPostJson($config['goedge_api_url']."/UserOrderService/finishUserOrder",json_encode($code,true),$token); return $finish_order; } else { error_log("获取 access token 失败: " . $access_token_json); return "获取 access token 失败: " . $access_token_json; } } function sendPostJson($url, $json_data, $token) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($json_data), 'X-Edge-Access-Token: ' . $token )); curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data); $response = curl_exec($ch); if (curl_errno($ch)) { error_log('cURL Error in sendPostJson to ' . $url . ': ' . curl_error($ch)); return "cURL Error: " . curl_error($ch); } curl_close($ch); return $response; } ?>