【发布时间】:2016-12-23 03:23:23
【问题描述】:
我正在构建一个网站,该网站将通过 Facebook 连接对用户进行身份验证,我在使用 PHP SDK/服务器端流程或 JS SDK/客户端流程之间纠结。
以下是一些注意事项:
- 我想在我的服务器上的数据库(用户 ID、电子邮件地址)中记录所有授权我的应用程序的用户
- 我想让用户能够使用 JS SDK 中的 FB.ui() 生成的有吸引力的对话在墙上发布内容
- 我希望能够通过我的服务器在用户的墙上发布故事以响应外部事件
- 我想根据用户当前是否登录 facebook 来启用/禁用我网站上的某些功能
我能想到的可能还有一些。但基于这些要求,我猜我将需要同时使用这两个 SDK。但是我应该依赖哪个 SDK 来在我的数据库中进行初始应用程序授权/新用户记录?
我对这在这两种情况下如何工作的想法:
JS SDK:
用户选择登录按钮,回调方法向服务器触发 AJAX 请求并通过 post 传递经过身份验证的用户的 FBID。服务器上的代码确定这是否是一个新用户,如果没有找到现有记录,则记录在数据库中 + 记录 access_token 以允许服务器端 API 请求。
PHP SDK:
用户被重定向到 Facebook 的授权页面,如果没有找到该用户的现有记录,则在 Facebook 将用户重定向回我的应用程序后执行的脚本会记录一条新记录。但是,如果我使用服务器端流程进行了身份验证,JS SDK 是否能够执行对 API 的调用?
【问题讨论】:
-
+1 从文档中看,您执行客户端授权然后发出服务器端 API 请求并不明显。谢谢。
标签: facebook-graph-api facebook client-side server-side