获取数据时出现Javascript和jQuery错误

时间:2013-08-19 04:37:22

标签: javascript jquery json node.js

我已经开始学习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放入broswer时,我得到了:

{"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文件时,我得到失败并且警告对话框失败

我通过JSON.stringify(some_json_object).从node.js服务器代码发送localhost上的数据。

错误是什么?

1 个答案:

答案 0 :(得分:0)

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

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

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