阿贾克斯没有正常工作

时间:2018-01-17 15:04:05

标签: javascript jquery html ajax

我的ajax在警报中显示响应时出现问题。

我使用jquery和ajax。 javascript包含正常的GET-Request。 ajax没有进入.done函数。该网站显示第二个警报:

  

警告("抱歉。服务器不可用。");

但是在浏览器中它会显示在控制台中。我使用firefox + Firefox插件(https://addons.mozilla.org/de/firefox/addon/cors-everywhere/reviews/)。我不认为插件是个问题因为没有插件它也可以工作。

所以这是我的 html:

<html>
    <head>
        <meta charset="utf-8" />
        <title>Peyer E1 9.2 Auswahl</title>
        <script src="clearcache.js"></script>
        <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
    </head>
    <body>
        <button onclick="data()">Test</button>
    </body>
</html>

这是我的 Javascript:

function data() {
    $.ajax({
        type: "GET",
        url: "url",
        dataType: "application/json",
        headers: {
            "Authorization": "Basic",
            "Cache-Control": "no-cache"
        }
    }).done(function() {
        alert("Success.");
    }).fail(function() {
        alert("Sorry. Server unavailable. ");
    });
}

1 个答案:

答案 0 :(得分:1)

如果您从Ajax请求中获得了200个结果,那么当它尝试解析响应时它就会失败。

将Ajax请求中的dataType值更改为&#34; json&#34;。它目前是&#34; application / json&#34;,它不是有效的数据类型...

function data() {
    $.ajax({
        type: "GET",
        url: "url",
        dataType: "json",    //  make sure this is correct
        headers: {
            "Authorization": "Basic",
            "Cache-Control": "no-cache"
        }
    }).done(function() {
        alert("Success.");
    }).fail(function() {
        alert("Sorry. Server unavailable. ");
    });
}