使用XMLHttpRequest时出现Javascript网络错误

时间:2014-02-15 12:10:49

标签: javascript jquery html xmlhttprequest

我正在尝试在我的代码中打开该页面。我使用了以下代码。

使用Javascript:

function tempFunction() {
    var xhr = new XMLHttpRequest();

    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            document.getElementById("page").innerHTML = xhr.response;
        }
    };
    xhr.open("GET", "http://stackoverflow.com/", false);

    xhr.send();
}

HTML:

<input type="button" id="btn" name="btn" value="Load" onclick="tempFunction()" />
<div id="page"></div>

参考链接:http://jsfiddle.net/DZmBG/3/

但是当我尝试将URL更改为stackoverflow时,我的代码抛出错误:

Unhandled exception at line 49, column 13 in http://localhost:10642/WebForm2.aspx

0x800a139e - JavaScript runtime error: NetworkError

我做错了吗?
任何人都可以帮我解决这个问题吗?

提前谢谢你......!

2 个答案:

答案 0 :(得分:1)

(会评论,但我没有足够的代表)

在尝试未经许可访问本地文件时,我得到了同样的错误消息(0x800a139e - JavaScript运行时错误:NetworkError)。

所以我怀疑你正在尝试在codeacademy.com上进行跨域调用,但不能在stackoverflow.com上进行,因此它失败了。

如果情况并非如此,请指正。

答案 1 :(得分:0)

错误的原因是请求的资源上没有'Access-Control-Allow-Origin'标头。堆栈溢出可能不允许直接http命中到他们的服务器。有关此问题的更多帮助,请参阅以下帖子(它解决了类似的问题之一),希望它会有所帮助

Origin is not allowed by Access-Control-Allow-Origin