Php Facebook Graph API组事件和身份验证

Php Facebook Graph API组事件和身份验证,php,facebook,facebook-graph-api,facebook-graph-api-v2.2,Php,Facebook,Facebook Graph Api,Facebook Graph Api V2.2,我正在尝试使用Graph API从我的私人群组页面中提取一个事件列表,并将其放在我的网站上,这样人们就可以在网站上看到我们所有的事件。我可以在Graph API Explorer工具上获得所需的数据,但无法在PHP中复制它 我没有使用SDK或任何东西,只是对API的一个简单GET调用来获取我想要的数据。它使用浏览器工具中的访问令牌工作了大约一个小时,然后令牌就不再工作了。我一直在试图弄清楚如何正确地进行身份验证,但本主题中的所有文档都只显示了如何使用Javascript SDK和服务器端API调

我正在尝试使用Graph API从我的私人群组页面中提取一个事件列表,并将其放在我的网站上,这样人们就可以在网站上看到我们所有的事件。我可以在Graph API Explorer工具上获得所需的数据,但无法在PHP中复制它

我没有使用SDK或任何东西,只是对API的一个简单GET调用来获取我想要的数据。它使用浏览器工具中的访问令牌工作了大约一个小时,然后令牌就不再工作了。我一直在试图弄清楚如何正确地进行身份验证,但本主题中的所有文档都只显示了如何使用Javascript SDK和服务器端API调用对页面上当前的用户进行身份验证

我想要的是,只需使用服务器端的我的帐户将数据加载到页面加载中,即可将事件拉到页面上,让任何人都可以看到,而不需要任何人拥有Facebook帐户并允许我的应用程序访问他们的信息。如何做到这一点?

摘要:通过在服务器上存储长期访问令牌,您可以使用该令牌代表用户(即您)在服务器端调用Graph API,即使没有用户在场,因为当您的朋友/观众查看您的网站时,您也不会在场

长篇大论

您最担心的是令牌过期,正如您在使用API Explorer令牌时所经历的那样。这是预期的行为,我们称之为短期代币,持续大约几个小时。如果你想让它更持久,你需要一个长寿的代币

在您的情况下,您可以手动获取这个长寿令牌,并在PHPSDK上使用它从后端获取所需的数据。客户端上没有人需要连接。只需确保在长寿命令牌的默认过期60天后返回,并刷新一个新令牌并用它更新脚本


请注意,生成长寿命令牌需要您传递client_id和client_secret,如开发人员文档中所述。如果以前您只是使用Graph API Explorer,那么这次您可能需要获得这些凭据。

谢谢您提供的信息!我正在研究长寿命代币,我的目标是使其完全自动化,这样我就不必一直回到reauth。我有应用程序id和密码,但不确定如何将此应用程序权限授予用户\事件和用户\组。我在哪里可以找到我的用户id和身份验证密码?在cookies/本地存储中?您是指客户端id,而不是用户id,对吗?当您从开发者网站查看应用程序时,您可以看到这些凭据。如果当前没有脚本,还可以使用图形资源管理器来允许权限。这里有一个下拉列表,您可以选择要用于进一步api explorer调用的应用程序。对于应用程序,选择“是”。查看您链接的Expiration and Extending Tokens部分下的图形,我试图完成的是跳过client部分中的第一个框,并通过服务器端的API调用手动完成。