PHP 401状态returns -1
PHP 401 status returns -1
我正尝试在我的 AngularJS
应用程序中 return 401
响应状态。但是在我看到的控制台中,它 returns -1
我在php中使用的内容:
header("HTTP/1.1 401 Unauthorized");
http_response_code(401);
同样在 codeigniter 中:
$this->output->set_header('HTTP/1.1 401 Unauthorized');
$this->output->set_status_header(401, "my status text");
在 200、205、206 等状态代码中工作正常
有什么想法吗?
您正在从 XMLHttpRequest 发出跨源请求。
在简单的情况下,这意味着在浏览器将数据提供给 JavaScript 之前,服务器必须向 JavaScript 授予权限。
这不是一个简单的案例。您正在提出一个需要 preflight authorisation 的复杂请求。
在发出您想发出的 POST 请求之前,浏览器正在发出 OPTIONS 请求以请求许可。
服务器正在用 401 响应响应 OPTIONS 请求。错误消息明确告诉您:
Response for preflight has invalid HTTP status code 401
然后浏览器完全拒绝发出 POST 请求。
因此 POST 请求的状态为 -1。
您需要以 200 状态(以及适当的 CORS 权限 headers)响应 OPTIONS 请求。然后浏览器将发出一个 POST 请求(如果你愿意,你可以用 401 拒绝)。
我正尝试在我的 AngularJS
应用程序中 return 401
响应状态。但是在我看到的控制台中,它 returns -1
我在php中使用的内容:
header("HTTP/1.1 401 Unauthorized");
http_response_code(401);
同样在 codeigniter 中:
$this->output->set_header('HTTP/1.1 401 Unauthorized');
$this->output->set_status_header(401, "my status text");
在 200、205、206 等状态代码中工作正常
有什么想法吗?
您正在从 XMLHttpRequest 发出跨源请求。
在简单的情况下,这意味着在浏览器将数据提供给 JavaScript 之前,服务器必须向 JavaScript 授予权限。
这不是一个简单的案例。您正在提出一个需要 preflight authorisation 的复杂请求。
在发出您想发出的 POST 请求之前,浏览器正在发出 OPTIONS 请求以请求许可。
服务器正在用 401 响应响应 OPTIONS 请求。错误消息明确告诉您:
Response for preflight has invalid HTTP status code 401
然后浏览器完全拒绝发出 POST 请求。
因此 POST 请求的状态为 -1。
您需要以 200 状态(以及适当的 CORS 权限 headers)响应 OPTIONS 请求。然后浏览器将发出一个 POST 请求(如果你愿意,你可以用 401 拒绝)。