【问题标题】:What defines jqXHR as "failed"什么将 jqXHR 定义为“失败”
【发布时间】:2018-03-28 01:08:41
【问题描述】:

我有一个对 spring 安全后端的 ajax 请求。由于某种原因,.then 永远不会发生。我发现.fail 出现在每个请求上,即使请求通过,后端的登录也有效,它返回状态码为 200 的响应。那么,什么将 jqXHR 定义为失败,我需要做什么添加响应以使其正常工作?

这是我的 ajax 请求:

  // Creates request object
function makeRequest(method, module, endpoint) {
    return req = {
        method,
        url: serverBaseUrl + module + '/' + endpoint
    };
}

// Function to return POST promise
function post (module, endpoint, data) {
    let req = makeRequest('POST', module, endpoint);
    req.data = data;
    return $.ajax(req);
}

这是我从 spring 安全设置中得到的响应:

HTTP/1.1 200 
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Content-Length: 0
Date: Wed, 28 Mar 2018 01:02:20 GMT
Expires: 0
Pragma: no-cache
Set-Cookie: JSESSIONID=8D6265E912D5DFCF418238F18586AFE1; Path=/; HttpOnly
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 1; mode=block

【问题讨论】:

  • 浏览器控制台/调试器中没有提示?
  • 我找不到。你有什么建议吗?
  • 我只能建议添加一个失败处理程序:.fail(function( jqXHR, textStatus, errorThrown ) { debugger; });,并在调试器失败时检查所有参数。

标签: ajax spring-security


【解决方案1】:

毕竟我的问题出在我的$.ajax 请求中。我有一个dataType 参数添加为application/json。这似乎是无效的。当我在失败时从请求中打印错误时发现了它。从这里得到答案: jquery ajax call return JSON parsing error

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-19
    • 1970-01-01
    • 1970-01-01
    • 2017-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多