PHP标头重定向消息已发送到浏览器,但未重定向
我的代码的相关部分如下所示PHP标头重定向消息已发送到浏览器,但未重定向,php,Php,我的代码的相关部分如下所示 try { $customer = \Stripe\Customer::create(array( 'email' => $_POST['custEmail'], 'source' => $_POST['stripeToken'], 'plan' => 'my_plan' )); header("Location:https://something.com"); exit; } catch(Exception
try
{
$customer = \Stripe\Customer::create(array(
'email' => $_POST['custEmail'],
'source' => $_POST['stripeToken'],
'plan' => 'my_plan'
));
header("Location:https://something.com");
exit;
}
catch(Exception $e)
{
//header('Location:oops.html');
echo "no work";
error_log("unable to sign up customer:" . $_POST['custEmail'].
", error:" . $e->getMessage());
}
我的PHP文件的响应包括以下内容:
HTTP/1.1 302 Found
Date: Sun, 31 Jul 2016 21:13:52 GMT
Server: Apache/2.4.23 (Amazon) OpenSSL/1.0.1k-fips PHP/5.6.22
X-Powered-By: PHP/5.6.22
Location: https://something.com
Content-Length: 0
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
因此,消息会返回(我猜),但我的浏览器不会重定向。我错过了什么
对PHP的请求是Ajax…响应数据是我试图重定向到的页面的完整HTML代码
位置标题表示“您要查找的资源在这里”。这并不意味着“在主浏览器窗口中显示此URL处的资源”。浏览器视口不会重定向,处理请求的任何内容都将重定向
浏览器将遵循重定向并将响应传递给Ajax回调函数(除非它触发错误,如同源策略冲突)
如果要在浏览器中加载页面,则不要使用Ajax。提交一份正式表格。Ajax的全部目的是避免在主视图中加载新文档。什么是“消息正在返回(我猜)”是什么意思?@Dagon我的意思是,根据我的PHP的响应头(如图所示),我的浏览器将获得重定向消息,但是它没有任何作用。你检查过了吗?你甚至连标题都没有<代码>退出(“此处”)代码>是一个很好的方法test@Dagon不知道这是什么意思:“tyoui甚至rich header call”哦,这是一篇ajax文章?那么,为什么要使用标题位置呢?(请首先提到这些事情)