Lau*_*ent 1 authentication twitter ios swift
如果用户在安装了本机 Twitter 应用程序的情况下登录,我希望我的应用程序打开 Twitter 应用程序以请求授权。
我已经实现了获取 的流程,oauth_token以便通过 Twitter 的 api 启动登录过程。只是,当前的 API 文档没有提及如何在此过程中使用本机 iOS 应用程序。它仅发送回用户登录的 url。
let url = URL(string: "https://api.twitter.com/oauth/authorize?oauth_token=\(result.oauthToken)")!
DispatchQueue.main.async {
UIApplication.shared.open(url)
}
Run Code Online (Sandbox Code Playgroud)
收到请求后oauth_token,我得到这个链接。打开链接将显示Webview登录。不是原生 Twitter iOS 应用程序。
我尝试使用深层链接手动启动 Twitter 应用程序,但找不到任何有关如何正确设置链接的资源。
到目前为止,我已经尝试过以下方法:
twitterauth://authorize?consumer_key=[KEY]&consumer_secret=[SECRET]&oauth_callback=swifter-[KEY]
Run Code Online (Sandbox Code Playgroud)
或者
twitterauth://authorize?oauth_token=\(result.oauthToken)
Run Code Online (Sandbox Code Playgroud)
没有任何成功...
正如另一篇文章中提到的,Clubhouse正是实现了这个流程。所以这是可能的。问题是如何?
自2018 年 5 月 1 日 TwitterKit 退役以来,此流程似乎尚未得到官方支持。任何仍然向最终用户提供此功能的应用程序都可能与 Twitter 建立某种合作伙伴关系,以实现这一点,而这在其他情况下是没有公开记录的。
\n相关的Twitter 开发者论坛帖子中对此的原因进行了很少的详细说明:
\n\n\n\n不幸的是,此时我们不得不进行一些增量调整,这对每个人来说都不是那么顺利;特别是正如您\xe2\x80\x99 所发现的那样,对于移动应用程序开发人员而言。我们\xe2\x80\x99 正在过渡到新的 API 平台(通过Twitter 开发者实验室),随着我们的进展,将会有一些变化 - 我们正在寻求您的反馈来帮助我们,如果您检查想法、身份验证和授权是我们\xe2\x80\x99 听过很多的东西。
\n今天我无法准确告诉您我们\xe2\x80\x99 何时会获得增强的解决方案,但这是我们正在积极努力的事情。
\n
官方指导是使用传统的WebView方法,直到Twitter正式重新发布此功能:
\n\n\n\n我不\xe2\x80\x99 相信这是可能的,所以我鼓励您使用完整的 OAuth 流程。很抱歉,这可能不是您的用户所喜欢的,但这是获得授权的记录方式(我们不记录或支持本机 iOS 应用程序的 URL 方案)。
\n
\n\n\n我们不支持或记录用户在 OAuth 流程之外登录 Twitter 的任何方式;任何未记录功能的使用如有更改,恕不另行通知。
\n
正如上面链接的,Twitter 似乎正在通过其UserVoice 页面征求对此的反馈,如果您愿意建议重新实现此类功能。
\n| 归档时间: |
|
| 查看次数: |
390 次 |
| 最近记录: |