在JavaScript中检索URL字符串以生成JSON对象

Retreving URL String to generate JSON Object in JavaScript?

本文关键字:JSON 对象 字符串 JavaScript 检索 URL      更新时间:2023-09-26

我想访问Yelp API 1.0,我已经得到了例如这个URL

http://api.yelp.com/business_review_search?term=burger&位置=洛杉矶% 20洛杉矶% 2 a % 20 ca& ywsid = SECRETKEY

它将以JSON字符串的形式给我一些在洛杉矶的Burger Locations。

我如何才能访问这个URL,以便将响应转换为JS对象?

我知道如何创建JS对象,问题是从服务器获得响应。

现在是我的代码:也许我们可以试着从那里开始:

var url = "http://api.yelp.com/business_review_search?term=burger&location=Los%20Angeles%2A%20CA&ywsid=secretKey" ;

            $.getJSON(url, function(json) {
                alert("JSON Data: " + json.message.text);
            });

你进入同源策略的主题,简单地说,你不能从b.coma.com使用正常形式的ajax到达URL。

如果你使用ajax,你应该使用JSONP,或者访问控制头。否则,您应该使用服务器作为代理向该URL发送常规HTTP GET和POST。

在url中添加"&callback=myFunction"。在文档中添加一个脚本标记,并将此url作为源。

var scriptElem = document.createElement('script');
scriptElem.src = url;
document.body.appendChild(scriptElem);

然后在页面中创建一个名为myFunction的函数,它的第一个参数将是返回的数据

使用$. getjson ().

下面是一个使用yelp的例子:

$.getJSON("http://api.yelp.com/business_review_search?term=burger&location=Los%20Angeles%2A%20CA&ywsid=SECRETKEY&jsoncallback=?", function(json) {
   console.log("JSON Data: " + json);
});