2012-02-13 163 views
0

如果我理解正确,Graph API允许使用通用访问令牌访问公共页面。然而,我发现当使用这种类型的令牌与用户令牌时,许多公共页面不会在搜索结果中返回。我不希望用户只需要通过OAUTH对话框来检索公共页面的基本属性。Facebook Graph API和通用访问令牌

我在做什么,或者理解错误:

下面这个例子使用的任何用户访问令牌,但使用没有结果时,通用访问令牌时,会返回一个结果?

https://graph.facebook.com/search?q=OSullivansHerndon&type=page&access_token={myuseraccesstoken}

https://graph.facebook.com/search?q=OSullivansHerndon&type=page&access_token={APPID|APP SECRET}

+0

我们强烈建议你接受一个答案 – Oybek 2013-06-24 18:19:23

+0

@Oybek他得到了他从堆栈溢出需要什么,他不会回来,直到他有一个需要解决的另一个问题。 – Tonithy 2013-07-23 23:13:20

回答

1

我怀疑你需要一个用户访问令牌作为搜索结果使用社交上下文中使用/搜索。如果你有页面ID,你可以加载,没有任何访问令牌,只需点击/编号

+2

实际上,如果使用了应用程序访问令牌,则经过多次测试后,它看起来像是任何具有国家或年龄限制的页面都不会被图API返回。所有没有限制的公共页面都可以正常返回。我想这是因为FB无法根据APP令牌来确定国家或年龄。 – Greg 2012-02-13 19:26:37

+0

格雷格是正确的。 – 2012-08-01 21:34:11

+0

所以我们如何解决这个问题,在这个页面https://developers.facebook.com/docs/reference/api/有一个访问令牌,它返回更好的结果 – 2012-08-16 21:01:13

1

我不认为你可以得到这个没有用户访问令牌的工作。从我有限的OAUTH是唯一的出路。

1

通过指定GRAPH API 用户令牌,您只是表示您正在使用用户首选项和信息。 如果你的意图是要获取一些公共页面信息,那么你需要该页面的用户名或用户名。而且,如果您的意图是要获取可供您的特定用户使用的所有公共数据,那么您必须通过oAUTH系统,因为间接您正在访问他的信息,这些信息在某些Facebook治理规则下是公开的。

通过提供用户ID

https://graph.facebook.com/19292868552 

通过编写一个页面的ID访问公共页面,您的CA Access的信息。现在的问题是如何访问该特定页面的ID,手动只需访问该页面 - >相册。在该页面的顶部,您将看到类似“专辑视频”。只要访问该链接的任何一个。现在看,woola该页面的ID是可见的。像这样的网址

http://www.facebook.com/media/albums/?id=176101909092314 

顺便说一句,如果你有兴趣执行搜索,那么你需要指定用户令牌。 Facebook为所有用户进行算法搜索并跟踪用户活动。所以,作为一个例子,结果对于你我来说并不总是一样的。

10

您可以为您的应用程序获取一个通用访问令牌,以便您查看请求,否则您需要在图形调用中使用access_token=参数。由于访问令牌是针对应用程序的,因此您无需对用户进行身份验证。

https://graph.facebook.com/oauth/access_token? 
client_id=YOUR_APP_ID& 
client_secret=YOUR_APP_SECRET& 
grant_type=client_credentials 

例如:

https://graph.facebook.com/nike/posts?access_token={response from above call} 
+0

我错误地使用了Access_Token,事实证明需要使用小写字母。 – 2014-02-02 09:20:42