首页 > 解决方案 > C 服务器 - AJAX 响应标头

问题描述

我有一个始终响应相同的小型 C 服务器:

"HTTP/1.1 200 OK\r\nServer: CServer\r\nAccess-Control-Allow-Headers: x-requested-with \r\nContent-Type: text/html\r\nContent-Length: 14\r\nConnection: close\r\n\r\n<h1>Done</h1>\n";

我现在可以用我的浏览器调用网络服务器并获得预期的结果,但是,同样的事情不适用于 AJAX。

正在发送请求,我还通过 Response-Payload 得到响应:

完毕

但是错误函数正在执行:alert("发生错误:" + xhr.status + " " + xhr.statusText); xhr.status = 0 和 xhr.statusText = 错误,这并没有真正帮助我。

我的响应包不正确吗?我需要改变什么?

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#button").click(function(){
        $.ajax({
            type: "GET",
            dataType : 'html',
            url: "http://localhost:8080/demotest.txt", 
            success: function(result){
                $("#div1").html(result);
            },
            error: function(xhr){
                alert("An error occured: " + xhr.status + " " + xhr.statusText);
                console.log(xhr);
            }
        });
    });
});
</script>
</head>
<body>
<div id="div1"><h2>Before</h2></div>
<button id="button">Get Content</button>
</body>
</html>

标签: ajaxhttpresponsehttpserver

解决方案


推荐阅读