我已经搜索了一段时间,但还没有找到 100% 符合我想要实现的目标的东西。
我正在向 API 提交数据并收到响应。我可以看到提交成功,我需要重定向到响应中包含的 URL。
响应示例...
{ "status": "OK", "redirectUrl": "https:\/\/blalabla.com" }
这些是我尝试过的东西......
$decodedarray = json_decode($response,true);
if($decodedarray['status'] == "OK") {
header("Location: ".$decodedarray['redirectUrl']);
}
if($response->response->header->status == 200)
{
$redirect_url = $result->response->body->redirectUrl;
header("Location: ".$redirect_url);
die();
}
if($response->response->body->status == 200)
{
$redirect_url = $result->response->body->redirectUrl;
header("Location: ".$redirect_url);
die();
}
提交后,页面看起来正在刷新,有时我会在浏览器中看到响应。但它不会自动重定向到给定的 URL。该 URL 是动态的并且会发生变化,因此我无法对其进行硬编码。
我很感激任何指点。谢谢
调用后
header("Location: ...")
,使用exit()
停止重定向干扰。要检查 PHP 脚本发送的标头,您可以使用浏览器开发人员工具或命令行。例如,
curl
。这样您就可以查看Location
标头是否正常。