在其他人的帮助下,我已经到了可以看到json从foursquare返回的地步,但任何试图调用它都会产生错误。
基本上,如果我在Firebug中并查看网络对象,我会看到状态200
如果我单击JSON选项卡,我可以看到我的access_token,但是如何从那里提取它以便我可以用于API调用?
这是最新尝试的代码。
var jsonUrl = url +"&callback=?";
var access_token;
$("#getJSON").click(function() {
$.getJSON(jsonUrl, { dataType: "JSONP" }, function(json){
...
access_token = json.access_token;
...
});
});
也尝试了
$.ajax({
dataType: 'jsonp',
jsonp: 'callback',
url: url,
success: function (json) {
console.log(json.access_token);
},
});
但是当我尝试提醒时(access_token);或运行foursquare api调用我得到以下错误
资源解释为脚本,但使用MIME类型application / json进行传输。 未捕获的SyntaxError:意外的令牌: checkinsGET https://api.foursquare.com/v2/users/self/checkins?oauth_token=undefined&format=json 401(未经授权)
我觉得它准备就绪并等着我来打电话,但是我怎么把它从Dom打印到我可以使用的var中?几个小时都在争吵,并且由于某种原因,我一直在尝试所有的研究技巧。感谢大家的帮助到目前为止,我真的希望能够通过这个!
答案 0 :(得分:0)
尝试删除“& callback =?”来自网址。我认为如果你将dataType设置为jsonp,jQuery会为你添加。
编辑: 来自描述dataType参数的jquery ajax文档:
“jsonp”:使用加载JSON块 JSONP。会添加一个额外的“?callback =?” 到URL的末尾以指定 回调。