仅支持POST请求';
exit;
}
// 4. 获取前端请求数据
$requestXml = file_get_contents('php://input');
if (empty($requestXml)) {
http_response_code(400);
echo '请求数据为空,请传入XML格式数据';
exit;
}
// 5. 配置目标接口信息(关键配置)
$targetUrl = "https://www1.44vs.com/web/KillGame/GetKillGameZhanJi.do";
$userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36";
$referer = "https://www.44vs.com/";
// 6. 必须配置Cookie(从浏览器获取)
// 登录https://www.44vs.com后,通过F12→Application→Cookies获取以下值
$cookie = "PHPSESSID=your_php_session_id; ";
$cookie .= "userInfo=your_user_info_cookie; ";
$cookie .= "Hm_lvt_xxxx=your_analytics_cookie; ";
// 7. 发送CURL请求到目标接口
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $targetUrl,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $requestXml,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false, // 绕过SSL证书验证
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_HTTPHEADER => [
"Content-Type: text/xml; charset=UTF-8",
"User-Agent: {$userAgent}",
"Referer: {$referer}",
"Cookie: {$cookie}",
"Accept: text/xml,application/xml",
"Accept-Language: zh-CN,zh;q=0.9",
"Connection: keep-alive"
],
CURLOPT_CONNECTTIMEOUT => 15,
CURLOPT_TIMEOUT => 20
]);
$responseXml = curl_exec($ch);
$curlError = curl_error($ch);
$httpStatusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// 8. 处理请求错误
if ($curlError) {
http_response_code(500);
echo '代理请求失败: ' . htmlspecialchars($curlError) . '';
exit;
}
// 9. 处理HTTP错误状态码
if ($httpStatusCode != 200) {
http_response_code($httpStatusCode);
echo '';
echo '目标接口响应异常,状态码: ' . $httpStatusCode . '';
echo '' . htmlspecialchars($responseXml) . '';
echo '';
exit;
}
// 10. 处理空响应
if (empty($responseXml)) {
http_response_code(500);
echo '目标接口返回空数据,可能Token过期或玩家ID不存在';
exit;
}
// 11. 正常返回接口响应
echo $responseXml;
?>