【问题标题】:Using a server to read my Facebook page [duplicate]使用服务器读取我的 Facebook 页面 [重复]
【发布时间】:2014-05-29 08:42:50
【问题描述】:

数周以来,我一直在试图寻找这个问题的答案,但我已经走入了许多死胡同,一直无法得到明确的答案。

我想要做的就是从服务器应用程序(C#,使用 C# SDK)访问我的 facebook 页面

我的问题与访问令牌有关。服务器没有用户界面,因此无法每 60 天重新验证用户以更新访问令牌。有人告诉我,如果我使用 App 访问令牌,我会没事的,因为这不需要经过续订过程。

但是当我尝试这种类型的构造时

        string accesstoken = m_AppId & "|" & m_AppSecret;
        Facebook.FacebookClient fb  = New Facebook.FacebookClient(accesstoken);
        Facebook.JsonObject x  = fb.Get("me")

我收到身份验证错误,因为我无法从应用访问令牌访问“我”。

我已阅读文档,它们似乎暗示所有访问令牌最终都会过期,但我无法调和的是,移动 facebook 应用程序只会在首次安装时对人类用户进行一次身份验证,然后再重新进行身份验证。这些移动应用程序对我需要的数据进行了非常相似的访问。

他们如何在不需要更新访问令牌的情况下做到这一点?

【问题讨论】:

  • 不要发布重复的问题。用户访问令牌因使用相应的 FB 应用程序而延长。这也写在文档中
  • 这不是重复的——我确实评论过你提到的那个我打算以更有意义的方式重新措辞。

标签: facebook facebook-graph-api facebook-javascript-sdk facebook-php-sdk facebook-c#-sdk


【解决方案1】:

如果您尝试访问 Facebook 主页,扩展的 access_token 不会过期。确保使用 API 将 access_token 转换为长期存在的。您只需要对用户进行一次身份验证即可获取页面 access_token。 See this tutorial.

【讨论】:

  • 谢谢你。问题是这个令牌确实会在 60 天后过期。这意味着我的服务器将在 60 天后停止工作。没有直接的用户交互。它是一个服务器。那么移动应用程序如何做到这一点。有谁知道吗?
猜你喜欢
  • 2016-02-22
  • 2017-08-04
  • 2012-09-20
  • 2010-10-06
  • 1970-01-01
  • 2014-12-23
  • 2011-11-17
  • 1970-01-01
  • 2016-11-12
相关资源
最近更新 更多