Facebook Open Graph API - 另一个应用程序的动作类型和对象类型(foursquare)

gft*_*fte 5 action opengraph facebook-graph-api facebook-apps

我正在尝试检索用户使用开放图表发布到Facebook的foursquare签入数据.我一般无法找到有关我不拥有的应用程序的信息(命名空间,操作类型和对象类型).

到目前为止,我的应用程序已成功地要求用户(我相信)访问他们已提交给foursquare FB应用程序的数据的相应权限:

user_actions:playfoursquare
Run Code Online (Sandbox Code Playgroud)

当我在新时间轴中访问foursquare应用程序页面时,我在网址中找到了"playfoursquare":

http://www.facebook.com/[my_username]/app_playfoursquare 
Run Code Online (Sandbox Code Playgroud)

现在我尝试使用具有以下结构的URL查询Graph Api :(参考:http://developers.facebook.com/docs/opengraph/objects/#retrieve)

GET /me/{namespace}:{action-type}/{object-type}
Run Code Online (Sandbox Code Playgroud)

现在,在foursquare会场页面的元数据中,我发现了一个og:'playfoursquare:venue'的类型.

到目前为止,我有我怀疑的命名空间对象类型.我只是简短而动作型.

从用户在Facebook上的foursquare应用程序页面(http://www.facebook.com/[my_username]/app_playfoursquare)上可以看到很多关于'签到'的引用,所以我对动作类型做了一个假设并得出结论图api请求应该是:

me/playfoursquare:{checkins,check-ins,check_ins}/venue 
Run Code Online (Sandbox Code Playgroud)

我尝试了以上所有"登记入住"的变化,他们都返回:

OAuthException - 未知路径组件 - 2500

我无法相信这个侦探工作是确定Open Graph上另一个应用程序属性的最佳方法.我想我错过了一些明显的东西.

无论哪种方式,我将不胜感激任何人都可以提供任何帮助.我有点失落.

谢谢,Gfte

Sim*_*oss 9

是的,目前,虽然它很容易找到另一个应用程序的命名空间(检查一些HTML,看看URL) - 它不可能找到另一个应用程序使用的动作名称 - 你必须猜测.

但是对于Foursquare,在我自己做了一些试验和错误之后,我已经能够确定他们当前的行为在以下URL中是可以获得的:

https://graph.facebook.com/me/playfoursquare:checkin_to?access_token=TOKEN
https://graph.facebook.com/me/playfoursquare:became_the_mayor_of?access_token=TOKEN
https://graph.facebook.com/me/playfoursquare:unlock?access_token=TOKEN
Run Code Online (Sandbox Code Playgroud)

一旦拥有user_actions:playfoursquare和/或friends_actions:playfoursquare权限.