菜鸟教程小白 发表于 2022-12-12 18:13:30

android - 使用 2016 Facebook SDK 使页面访问 token 永不过期?


                                            <p><p>我们正在构建的应用程序是一个 iOS 和 Android 移动应用程序,它将高中生与非营利组织配对,以帮助管理他们的 Facebook 页面。我们将每个学生分配给一个非营利组织,让他们成为其 Facebook 页面的管理员,并允许他们代表该组织创建帖子以吸引新的受众。然后,每个学生都会获得一个分数,该分数由学生在页面上的帖子获得的点赞、评论、分享等组成。</p>

<p>我们遇到的麻烦在于 Facebook Graph API。我们需要熟悉当前 Facebook SDK 的人来帮助我们制定更好的计划来检索特定数据。</p>

<p>目前,我们已经为我们平台上的每个非营利性 Facebook 页面创建了一个管理员个人资料。我们使用此管理员访问权限来检索每个 Facebook 页面的用户访问 token 和页面访问 token 。但是使用新的 SDK,我们只能使页面访问 token 持续 60 天,这使得我们不得不不断刷新 token 来检索数据。但是,当我们刷新时,Facebook 会要求我们使用用户名和密码进行身份验证,这会减慢我们的后端速度,并有很高的服务器崩溃风险。此外,这种方法增加了我们每天向 Facebook 发出的数据请求数量,当我们向应用添加更多用户时,Facebook 可能会完全关闭我们的访问权限。</p>

<p>所以我们的问题确实出在这个页面访问 token 上,因为我们正在尝试从多个不同的 Facebook 页面查询数据。我们请求的数据也非常具体,因为我们只希望页面上特定“admin_creator”发布的帖子中的数据(即仅限学生,而不是任何其他管理员)为学生分配分数。 </p>

<p>有没有办法让当前的 Facebook SDK 的页面访问 token 永不过期?有一些帖子描述了这个过程,但它们是针对 2014 年的,而不是当前版本。另外,有没有比我们目前的方法更好的方法来检索我们需要的特定数据?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>步骤:</p>

<ol>
<li>获取具有<code>manage_pages</code>权限的<strong>user-access-token</strong>。 </li>
<li><p><strong>扩展</strong> token 使用(做服务器端,因为它涉及应用程序 secret )</p>

<blockquote>
<p><a href="https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&amp;client_id=" rel="noreferrer noopener nofollow">https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&amp;client_id=</a>{your_app_id}&amp;client_secret={your_app_secret}&amp;fb_exchange_token={user_token_from_last_step}</p>
</blockquote> </li>
<li><p>使用上述步骤中的扩展 token 并使用 API-</p>

<pre><code>/v2.5/{page-id}?fields=access_token
</code></pre>

<p>您将获得<strong>页面访问 token </strong>作为响应,该 token 永不过期。</p></li>
</ol>

<p>我认为您已经完成了第 2 步,只需按照第 3 步进行操作即可。</p>

<p>我建议你通过 <a href="https://developers.facebook.com/docs/facebook-login/access-tokens" rel="noreferrer noopener nofollow">this page</a>关于访问 token 和事情会更清楚。</p></p>
                                   
                                                <p style="font-size: 20px;">关于android - 使用 2016 Facebook SDK 使页面访问 token 永不过期?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/34891245/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/34891245/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: android - 使用 2016 Facebook SDK 使页面访问 token 永不过期?