使用JavaScript从外部站点解析json

时间:2012-07-07 02:27:50

标签: javascript jquery ajax json google-chrome-extension

我试图在外部网站上解析一些json,但我遇到了麻烦。必须使用JavaScript或JQuery,因为它适用于chrome扩展。为了达到目的: 我需要使用json {“_ _visitor_alertsUnread”:“0”}从外部URL获取数字,并将返回的数字设置为变量。我该怎么做呢?

我已经尝试了一些东西,比如JSON.parse,但它不起作用:(

简而言之:如何从外部网站上的这个json获取数字并将其设置为变量?

2 个答案:

答案 0 :(得分:3)

除非站点支持JSONP或跨源资源共享,否则无法从Javascript中的外部URL(在其他域中)获取数据。如果是,请使用XMLHttpRequest获取数据,JSON.parse()阅读。

脚本:

var xhr = new XMLHttpRequest();
xhr.open( 'GET', 'example.com/json', true );

xhr.onload = function () {
    var unread = window.JSON.parse( xhr.responseText )._visitor_alertsUnread;
};

xhr.onerror = function () {
    //process error
};

xhr.send();

答案 1 :(得分:2)

使用http://api.jquery.com/jQuery.getJSON/

尝试此操作
$.getJSON('your_url', function (jsonobj) {
    var unread;
    unread = jsonobj._visitor_alertsUnread;
});