Javascript 将HTTP状态响应设置为201后返回200
我使用AJAX作为登录表单,当用户提供正确的凭证时,它应该重定向到登录页面 这是AJAX布局(在accounts.js中登录和注册不同的函数): 在login.php和register.php中都有检查成功的代码,如下所示:Javascript 将HTTP状态响应设置为201后返回200,javascript,php,ajax,Javascript,Php,Ajax,我使用AJAX作为登录表单,当用户提供正确的凭证时,它应该重定向到登录页面 这是AJAX布局(在accounts.js中登录和注册不同的函数): 在login.php和register.php中都有检查成功的代码,如下所示: if($success == 1) { echo '$success'; $_SESSION['id'] = $id; header(201); exit(); } 如果注册成功,则返回201,但是登录总是返回200(但会回
if($success == 1)
{
echo '$success';
$_SESSION['id'] = $id;
header(201);
exit();
}
如果注册成功,则返回201,但是登录总是返回200(但会回显成功消息)
JS代码:
xHRObject.open("GET", "login.php?id=" + Number(new Date) + options, true);
xHRObject.onreadystatechange = function() {
if (xHRObject.readyState == 4 && xHRObject.status == 200)
{
alert(xHRObject.status);
}
else if(xHRObject.status == 201)
{
window.location.href = 'landing.html';
}
}
您必须在输出任何内容之前输出标题
尝试移动
标题(201)在回显
调用之前,请将code>设置为,并确保没有任何其他内容更早输出。您必须在任何内容之前输出标题
尝试移动标题(201)在调用echo
之前,将code>设置为,并确保在此之前没有任何其他输出。标头将字符串作为其参数(不是整数)
或使用
header将字符串作为其参数(不是整数)
或使用
xHRObject.open("GET", "login.php?id=" + Number(new Date) + options, true);
xHRObject.onreadystatechange = function() {
if (xHRObject.readyState == 4 && xHRObject.status == 200)
{
alert(xHRObject.status);
}
else if(xHRObject.status == 201)
{
window.location.href = 'landing.html';
}
}
header("HTTP/1.0 201 Created")
http_response_code(201)