如何使用 Facebook 登录 API 对 XMPP 用户进行身份验证?

Posted

技术标签:

【中文标题】如何使用 Facebook 登录 API 对 XMPP 用户进行身份验证?【英文标题】:How can I authenticate XMPP users with Facebook Login API? 【发布时间】:2017-09-21 08:45:03 【问题描述】:

我正在制作一个带有 Facebook 登录功能的 android 聊天应用程序。我决定将 XMPP 用于 IM 协议。我已经设法使用 Facebook Login API 实现注册,但现在我想知道如何将它集成到登录到 XMPP 服务器。我将 OpenFire 服务器与 mysql 数据库和 Smack API for Java 一起使用。连接到服务器时,我需要提供用户名和密码,但我从 Facebook 登录 API 获得的唯一信息是公开个人资料和 Facebook 用户 ID。

如何让 OpenFire 使用 Facebook 登录 API 来验证我的用户?

【问题讨论】:

【参考方案1】:
Facebook has implemented XMPP Server for us, so we just need to make the implementation for client.
After googled, i’ve found one Java XMPP Client API called SMACK that I think is suitable for this case. So, I’m going to use this API.
First, you have to download the API from here (last stable version was 3.2.1 when I wrote this note).
After downloaded the API (whether in zip or tar.gz), extract that compressed file to your local directory in your machine.
The file has already came with several documentation, examples, and Doc API. So, it will be easy for us to learn.
For basic use, there are 3 required jar files for this API as follows:

smack.jar
smackx.jar
smackx-debug.jar (used for debug mode, i.e. if you turn on the debug mode).
This link may help you out. please try this.

Facebook Chat Xmpp Services

【讨论】:

Facebook Chat API 已弃用,而且,我不想连接到 Facebook 的即时通讯工具,我想制作自己的即时通讯工具,但要使用其 Facebook 帐户验证用户身份。

以上是关于如何使用 Facebook 登录 API 对 XMPP 用户进行身份验证?的主要内容,如果未能解决你的问题,请参考以下文章

使用 facebook 登录并使用 oauth 2.0 对 REST api 调用进行身份验证

Facebook API:如何在facebook中获取登录用户的关注者列表[重复]

使用现有用户访问令牌使用 Spring Social 登录 Facebook

用户登录后如何使用社交 API(如 facebook)将数据存储在数据库中

如何在 Flutter 中使用 rest api 不使用 firebase 以 google 或 facebook 登录

使用新的活动结果 API 登录 Facebook Sdk