1

我已经开始学习javascript,我在下面写了一段代码。

var dataFetch = $.getJSON("http://localhost:12345/stream", function (Data) {
    alert(Data);
    $.each( Data, function () {
        alert(this);
        $("<li>").html(this.rss).prependTo(tweetList);
    });
});

dataFetch.done(function () {
    alert("done");
});
dataFetch.fail(function () {
    alert("fail");
});

当我将链接http://localhost:12345/stream放入浏览器时,我得到:

{"rss":{"version":"2.0","channel":{"title":"Dave Winer","link":"http://scripting.com/","description":"Dave Winer&apos;s \"Scripting News\" weblog, started in April 1997, bootstrapped the blogging revolution.","language":"en-us","copyright":"Copyright 2012 Scripting News, Inc.","pubDate":"Mon, 08 Oct 2012 04:00:00 GMT","lastBuildDate":"Mon, 08 Oct 2012 18:12:27.... 
........... much more here

但是当我运行这个 html 文件时,我得到了失败的警告对话框 fail

我通过JSON.stringify(some_json_object).node.js 服务器代码在本地主机上发送数据。

错误是什么?

4

1 回答 1

0

将“Access-Control-Allow-Origin”:“*”放在createServer函数的响应头中解决了问题:

response.writeHead(200, {"Content-Type" : "text/plain",
                         "Access-Control-Allow-Origin" : "*"}); 

这允许每个人访问我服务器的这个端点。也可以使用 IP 地址或域名来代替 *,以仅允许特定客户端访问它。

于 2013-08-23T06:37:41.023 回答