Facebook graph api 在没有登录用户的情况下使用Graph API

Facebook graph api 在没有登录用户的情况下使用Graph API,facebook-graph-api,offline,Facebook Graph Api,Offline,我对使用Graph API非常熟悉,我刚刚读到关于离线访问权限的未来弃用,这对我来说是个问题 我知道我的英语很差,但我会尽我所能为我解释。我希望你能理解我 据我所知,当你发送对某些FB信息的请求,并传递一个访问令牌,以便能够代表“给”你该令牌的用户行事(我要求用户使用客户端流授权我的应用程序,然后我存储访问令牌以备将来的请求),并且没有用户登录FB,出现错误,请求失败 在我的例子中,当我向FB发送信息请求时,用户不可能登录FB(我不知道如何用英语解释原因,但这是不可能的)。因此,在知道之前,我使

我对使用Graph API非常熟悉,我刚刚读到关于离线访问权限的未来弃用,这对我来说是个问题

我知道我的英语很差,但我会尽我所能为我解释。我希望你能理解我

据我所知,当你发送对某些FB信息的请求,并传递一个访问令牌,以便能够代表“给”你该令牌的用户行事(我要求用户使用客户端流授权我的应用程序,然后我存储访问令牌以备将来的请求),并且没有用户登录FB,出现错误,请求失败

在我的例子中,当我向FB发送信息请求时,用户不可能登录FB(我不知道如何用英语解释原因,但这是不可能的)。因此,在知道之前,我使用具有离线访问权限的令牌,然后我可以代表授权应用离线访问的用户发送请求

我想知道的是,如果知道离线访问权限将被弃用,这是否是不可能的。我的意思是,我想知道是否有一种解决方案可以让我代表一个用户发送请求,而不让他登录FB(我需要一个访问令牌,在该用户授予应用程序授权后,该令牌可以保存到该用户注销时)

对不起,我的英语不好,我希望你能理解我


我将尝试以更好的方式提出我的问题:

我想做的是一个应用程序,用户可以从电视上访问,但没有可用的浏览器。因此,我不知道如何将用户重定向到FB以对应用程序进行身份验证和授权。所以,我要做的是准备一个“配置网站”,用户可以去那里授权应用程序离线使用(将他们重定向到FB并请求他们离线许可)。我存储离线令牌,当用户访问应用程序时,我可以使用这些令牌发出Graph API请求,即使没有用户登录FB,我也可以获取FB信息(没有浏览器或其他用户可以登录Facebook的地方)

从现在起,脱机访问权限将被弃用。所以在没有登录用户和脱机访问权限的情况下,如何进行图形API调用


当我收到一个错误时,我试图使用新的端点来获取一个新的令牌,该错误表示令牌无效,因为用户从FB注销,但该端点的响应完全相同:我随新请求发送的令牌无效,因为用户已注销,若用户不再登录,我将无法获取新令牌。但我无法在用户每次访问应用程序时将其重定向到FB进行登录,因为用户不使用浏览器。

不,您的访问令牌不应在用户注销后过期。访问令牌将在一定时间后过期,但每次用户与您的应用程序交互时,您都可以默默地将其延长60天:

谢谢您的回答!如果你在回答中说的是正确的,我就做错了,但我不知道怎么做。我在我的应用程序配置中激活迁移选项“拒绝脱机访问”。然后我做这个测试:1)我连接到我的应用程序以授权该应用程序(没有脱机访问权限,因为它已被弃用)。应用程序存储获得的令牌。2) 我从Facebook注销,以测试令牌是否能够在注销后存活。3) 我使用步骤1中获得的令牌向FB info发出请求,FB应答告知令牌无效,因为用户已注销。怎么了?我猜你在使用客户端OAuth。阅读上面链接中的“客户端OAuth和通过新端点延长访问令牌到期时间”一节,应该会有所帮助。是的,这一节是我认为它将帮助我的第一节。但我尝试使用新端点,错误仍然发生。如果我有一个没有脱机权限的访问令牌(因为它将被弃用),然后用户从FB注销,我尝试使用该令牌发出请求,“用户已注销”错误就会发生,如果我尝试向该端点发送扩展此过期令牌的请求,我将获得与应答相同的错误(它告诉我令牌无效,因为用户已注销)。我想,您可以使用服务器端身份验证,也可以在创建时立即延长访问令牌的过期时间。非常感谢您的帮助,但我还无法使其正常工作…我现在使用服务器端身份验证:我通过将用户重定向到FB以授权应用程序来获取代码,然后使用“/oauth/access\u令牌”使用此代码获取访问令牌的端点。我存储该访问令牌,但当用户注销并发送Graph API请求时,它失败,答案是“…会话无效,因为用户已注销”。我无法理解如何在用户登录FB的情况下从我的服务器发送Graph API请求,因为我没有cookie,因为用户的浏览器有。。。