如何允许用户使用他们自己的松弛帐户/公司登录我的应用程序中的松弛帐户

时间:2017-07-13 01:36:54

标签: swift oauth slack

我读过的所有内容(例如https://api.slack.com/docs/oauth)都让我觉得我只能构建一个与我管理的Slack团队集成的应用程序。例如。我必须创建我的Slack客户端ID ...等...然后我可以为我的团队oAuth用户。

我想要做的是允许我的应用程序用户使用他们的Slack登录来登录我的应用程序(对于我无法控制或无法访问的Slack团队。)我不想强迫我的用户生成客户端ID以使用我的应用程序。我希望他们以与Google登录或Facebook登录相同的方式登录。

我发现的最接近的事情是"登录&slack" HTML按钮,但我想在iOS中使用Swift。

这可能吗?

2 个答案:

答案 0 :(得分:0)

可悲的是,那是不可能的。对于谷歌或Facebook,身份验证的工作方式是,它们为您提供了一个移动API,用于处理您的应用程序与其Web服务之间的通信。因此,您的任务就是采用该API,进行简单的函数调用并从API检索用户的信息。例如, facebook按钮由API提供。

然而,从松弛的网站来看,他们只记录了RESTful API。因此,在这种情况下,您必须自己处理参数的传递和存储,并手动发送HTTP请求。您可以查看Alamofire框架,它是发出HTTP请求的最佳选择。基本上,您必须通过HTTP请求通过特定URL发送所需参数以执行登录操作,并且您必须解析响应数据,然后查看登录是否成功等等

答案 1 :(得分:0)

感谢朋友的帮助,看起来答案是肯定的。

您必须首先确保"分发应用程序"

enter image description here

然后设置您需要的权限,并安装应用程序" (这有点不是"智能"因为您可能会意外添加冲突的权限并在尝试安装时出错)。

enter image description here

完成后,您将获得一个Auth Token,并可以使用oAuth向任何用户发出登录请求。

您还可以触发登录请求,如下所示:

https://slack.com/oauth/authorize?client_id=[client id]& scope = identity.basic

修改:对于未来的Google员工,Slack现在还为此类OAuth授权/登录提供了特定的文档页面:Sign in with Slack