iOS Facebook 登录但不能连接?

Posted

技术标签:

【中文标题】iOS Facebook 登录但不能连接?【英文标题】:iOS Facebook Login but not Connect? 【发布时间】:2012-02-15 04:58:55 【问题描述】:

今天我有一个难题,它给我带来了一些问题。

我开始在我的 ios 应用程序中实现 Facebook 登录/连接,这是我人生中的第一次。

有什么奇怪的?到目前为止什么都没有,除了我希望用户可以ONLY 使用 Facebook 登录登录应用程序,而不是注册。我解释得更好:只有已经在我的网站上注册的用户才能使用 Facebook Login 登录。

网站:用户可以通过 Facebook Connect 注册 iOS 应用程序:用户只有在网站中已通过 Facebook Connect 连接时才能使用 Facebook Connect。

这可能还是错觉?例如,如果有办法在显示权限弹出窗口之前获取已登录用户的 facebook uuid,那就太好了,因为我会在我的数据库中检查这个 uuid,如果存在,我将允许连接用户。

【问题讨论】:

【参考方案1】:

在网站方面

您的用户登录,然后授权使用您的应用。一旦她获得授权,就将她的用户 ID 添加到您的数据库中。

iOS 端

您的用户登录。一旦她登录,您就可以访问她的用户 ID。因此,在显示主应用程序屏幕之前显示加载图形。向您的服务器发送带有用户 ID 的请求。服务器回复说她已获得授权,然后您继续显示您的主应用程序屏幕。或者,服务器回复说她未获得授权,然后您继续显示一条错误消息,指示用户首先在网站上授权(也许此屏幕应该有一个重试按钮)。

【讨论】:

太好了,我也想过这个。所以我需要在用户登录后从 facebook 图表中获取 facebook 用户 ID,对吧? 要在 php 中获取用户 ID,您可以使用 $facebook->getUser() 而在 iOS 中,您可以使用 /me 谢谢,我用过这个电话:[delegate.facebook requestWithGraphPath:@"me" andDelegate:self];。再见! ;)【参考方案2】:

如果我收到您的问题 .. 您可以通过它在您的网站上构建 Api_service 您可以从应用程序发送用户电子邮件并检查此邮件是否已在您的网站上注册 .. 所以在用户登录 Facebook 之前,您制作一个请求调用此 api > 您向您的应用返回了一个值,告诉您该用户是否已在您的站点中注册.. 那么您可以只允许您想要登录 fb 的用户。

【讨论】:

好吧,您可以要求用户输入他的电子邮件.. 或者您让他连接到 fb,然后您可以获取他的邮件(通过许可)并将其与您网站中的邮件数据库(如果存在)进行比较您可以让他继续使用该应用程序,否则请注销,实际上这取决于您在用户登录时为用户提供的功能。

以上是关于iOS Facebook 登录但不能连接?的主要内容,如果未能解决你的问题,请参考以下文章

Facebook 登录问题 - iOS 应用程序的新用户无法通过 FB 连接登录

facebook oauth 抱怨缺少“登录密码”

如何使用 facebook ios sdk 发出好友请求?

iOS:无需离开应用授权即可连接 Facebook

iOS Facebook登录教程[关闭]

iOS Facebook 最新 SDK 无法通过原生 App 但浏览器登录