api POST Auth始终返回200,但有一个401错误
首先,我要说的是,我已经进行了广泛的研究,不知道为什么当我使用“错误”的密码或用户登录时,网络身份验证状态显示为200,但控制台报告错误:无效的用户名或密码。因此,它显示正确的错误,但状态为200,这是不正确的。状态应该是401 或者,当我输入正确的信息时,它会按照预期为我提供正确的凭证。问题是200状态,而它应该是401状态。请帮助我找出状态未正确返回的原因。是的,它需要返回401,这样代码的另一部分才能正确执行 下面是它所说的图像: 这是我的POST授权代码(减去我的DB连接-连接的数据库):api POST Auth始终返回200,但有一个401错误,api,authentication,post,error-handling,httpresponse,Api,Authentication,Post,Error Handling,Httpresponse,首先,我要说的是,我已经进行了广泛的研究,不知道为什么当我使用“错误”的密码或用户登录时,网络身份验证状态显示为200,但控制台报告错误:无效的用户名或密码。因此,它显示正确的错误,但状态为200,这是不正确的。状态应该是401 或者,当我输入正确的信息时,它会按照预期为我提供正确的凭证。问题是200状态,而它应该是401状态。请帮助我找出状态未正确返回的原因。是的,它需要返回401,这样代码的另一部分才能正确执行 下面是它所说的图像: 这是我的POST授权代码(减去我的DB连接-连接的数据库
这是我的表格代码:
<script type="text/javascript">
$('#login').click(function() {
$.ajax({
type: "POST",
url: "api/auth",
processData: false,
contentType: "application/json",
data: '{ "username": "'+ $("#username").val() +'", "password": "'+ $("#password").val() +'" }',
success: function(r) {
console.log(r)
}
});
});
</script>
$('#login')。单击(函数(){
$.ajax({
类型:“POST”,
url:“api/auth”,
processData:false,
contentType:“应用程序/json”,
数据:“{”用户名“+$(“#用户名”).val()+”,“密码“+$(“#密码”).val()+“}”,
成功:功能(r){
console.log(r)
}
});
});
德夫也是这么说的:
请求URL:
申请方式:邮寄
状态代码:200 OK
远程地址:xx.xx.1xx.2xx:xx
推荐人策略:降级时无推荐人
我希望当我用不正确的用户名或密码单击$login按钮时,chrome中的DEVtools将以红色显示Auth,并具有401状态 您不能在echo或任何输出之后使用“header”。http_response_代码在您回显错误后尝试插入头参数。因此,响应代码为200,在服务器日志文件中,您会发现有关此问题的警告(除非禁用了错误)。问题:如果禁用错误,是否可以保持原样?如果是这样的话,我怎样才能在不出错的情况下禁用错误呢?只需在错误消息之前写下标题(交换行),您就完成了:-)谢谢您为我节省了这么多时间
<script type="text/javascript">
$('#login').click(function() {
$.ajax({
type: "POST",
url: "api/auth",
processData: false,
contentType: "application/json",
data: '{ "username": "'+ $("#username").val() +'", "password": "'+ $("#password").val() +'" }',
success: function(r) {
console.log(r)
}
});
});
</script>