我正在编写一个 VC++ 应用程序,我想允许用户通过 Facebook 登录。查看文档,看起来它们只支持服务器、JavaScript 和本地移动客户端上的 php。
现在我想做的是在应用程序中打开一个浏览器窗口,让用户进行身份验证,然后获取身份验证令牌来进行本机应用程序调用。
我正在考虑的另一件事是让用户在我的应用程序中输入 Facebook 用户名和密码,然后直接使用它,但我不确定这是否允许。
如何通过 Facebook 验证桌面应用程序?
我正在编写一个 VC++ 应用程序,我想允许用户通过 Facebook 登录。查看文档,看起来它们只支持服务器、JavaScript 和本地移动客户端上的 php。
现在我想做的是在应用程序中打开一个浏览器窗口,让用户进行身份验证,然后获取身份验证令牌来进行本机应用程序调用。
我正在考虑的另一件事是让用户在我的应用程序中输入 Facebook 用户名和密码,然后直接使用它,但我不确定这是否允许。
如何通过 Facebook 验证桌面应用程序?
现在我想做的是在应用程序中打开一个浏览器窗口,让用户进行身份验证,然后获取身份验证令牌来进行本机应用程序调用。
实际上,您走在正确的轨道上:Facebook 为您提供了所谓的“手动流程”。
因此,这就是您在应用程序中使用 Facebook 验证用户的方式,分三个步骤:
当用户应该登录 Facebook 时,打开嵌入式浏览器并指向这个 url:
https://www.facebook.com/dialog/oauth?client_id={app-id}&display=popup&redirect_uri=https://www.facebook.com/connect/login_success.html
这里需要注意三点:
{app-id}
为您的应用程序的 id。https://www.facebook.com/connect/login_success.html
publish_actions
等)。有关更多信息,请参阅可选参数的完整列表。确保您在应用的高级设置中启用了以下开关:
出于安全原因,您应该https://www.facebook.com/connect/login_success.html
在“有效的 OAuth 重定向 URIs”下输入,但它在没有明确设置的情况下对我有用。
现在,Facebook 服务器的重定向应该将浏览器窗口从上方导航到重定向 uri。它还将在 uri 的片段中包含访问令牌,如下所示:
https://www.facebook.com/connect/login_success.html#access_token=ACCESS_TOKEN...
使用ACCESS_TOKEN
以便对 Facebook API 进行任何后续调用 - 等等!