gpt4 book ai didi

javascript - 函数没有触发?

转载 作者:行者123 更新时间:2023-12-01 05:50:58 25 4
gpt4 key购买 nike

我的 js 中有这个 ajax 调用。通过此请求,我想知道是否有以前打开的 session ,在这种情况下,它将显示登录表单。

因此,如果没有先前的 session ,服务器将返回错误 400 错误请求(laravel 响应类)。但是当服务器返回时,$.ajax对象不会触发错误函数。有人知道为什么吗?

服务器响应

$data =[
'error' => [
'message' => 'Authentication Error',
'statusCode' => 400
]
]
Response::json($data, 400, [])
->setCallback(Input::get('callback'));

Ajax 请求

$.ajax({
global: true,
method: 'POST',
dataType: 'jsonp',
url: 'http://localhost:8082/api/checkAuth?callback=?',
success: function(response) {
return console.log(response);
},
error: function(a, b, c) {
console.log(a);
console.log(b);
return console.log(c);
}
});

我也尝试获取状态代码来触发函数,但无论如何它都不起作用:

** Ajax 请求 **

$.ajax({
global: true,
method: 'POST',
dataType: 'jsonp',
url: 'http://localhost:8082/api/checkAuth?callback=?',
success: function(response) {
return console.log(response);
},
statusCode:{
400: function(a,b,c){
console.log(a);
console.log(b);
console.log(c);
}
}
});

谢谢各位的帮助

一些更新:

多亏了manish,我发现了这个plugin用于处理 jsonp 请求,触发错误函数。有谁知道如何捕获错误函数中返回的状态代码?

最佳答案

我假设服务器返回 400,因为它需要 POST 请求,jsonp 只能发送 GET 请求。您可能不想使用 jsonp,而是使用 CORS .

关于javascript - 函数没有触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22480308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com