如何从Foursquare检索最后一张图片,对OAuth一无所知?

时间:2013-07-18 13:51:51

标签: api oauth foursquare

我正在尝试使用Foursquare API中的图片进行最后一次登记,并提供以下数据:

  • 场地名称;
  • 办理登机手续的日期和时间;
  • 图片网址;
  • Foursquare.com上的登记网址。

幸运与否,我是:

  • 能够使用jQuery的$.getJSON从公共/开放API中检索数据(即我在Dribbble上的最后一次拍摄,我在Last.fm上的最后一首歌,或者我在Instagram上的最后一张照片);
  • 无法对OAuth应用程序进行编码,主要是因为每当我尝试学习它时,我都无法理解OAuth。

这就是我所做的:

  • foursquare.com/developers/apps上创建了一个应用,所以我现在有一个客户端ID和一个客户端秘密;
  • 尝试将客户端ID和秘密投入到&.getJSON请求中,并悄悄地期望它能够正常工作,例如:
var url1 = "https://api.foursquare.com/v2/users/self/checkins?client_id=XXX&client_secret=XXX",
    url2 = "https://api.foursquare.com/v2/users/self/checkins?oauth_token=XXX&v=20130718"

$.getJSON(url1, function(data) {
    console.log(data);
});

$.getJSON(url2, function(data) {
    console.log(data);
});

当然没有任何作用,也许是因为我不知道OAuth是如何工作的,我需要做些什么来验证我的请求。我曾尝试(多次)阅读OAuth文档,但我对这些问题的低识字率根本没有帮助。结论:我对OAuth的理解不够,如何才能获得最后一张图片?也许一个JS / PHP库可以简化这个过程(如果你能推荐一个,我会非常感激),但我也想了解它是如何工作的。

1 个答案:

答案 0 :(得分:2)

您尝试使用的用户/ self / checkins端点无法通过无用户访问(这是您尝试使用url1进行的操作),这意味着无论好坏,您我将不得不使用OAuth。

OAuth是指用户授予您在Foursquare上访问此用户数据的权限。通过我们在page on connecting上描述的流程,您可以从我们这里获得access_token,您需要在每次调用我们的API时通过该流程。如果此文档在技术上过于密集,可能尝试使用现有的OAuth library甚至一些即将到来的"OAuth-as-a-service"解决方案。如果您遇到身份验证过程中的任何特定点,请随时给api(at)foursquare(dot)com发送电子邮件,我们会尽力帮助您完成。