在Vapor中使用第三方OAuth API

时间:2018-05-24 21:00:50

标签: swift oauth-2.0 vapor

我正在学习Vapor,作为这个过程的一部分,我正在使用框架构建一个网站。作为我的应用程序的一部分,我想利用使用OAuth的Uber API。

按照概述here检索用户访问令牌的过程,它特别建议使用预先构建的库来执行授权授权和令牌交换。

对于OAuth,我能够找到两个库:

OAuthSwiftp2/OAuth2

这两个库似乎与Swift的Package Manager不兼容,因此不能与Vapor一起使用。

这有什么工作吗?或者我是否必须手动创建库以支持使用Vapor的OAuth流程?

1 个答案:

答案 0 :(得分:2)

据我所见,Vapor中的大多数身份验证都是使用turnstile完成的: https://github.com/stormpath/Turnstile

raywenderlich有很好的教程/演练: https://videos.raywenderlich.com/screencasts/637-server-side-swift-with-vapor-authentication-with-turnstile

由于您希望与Uber集成,我建议您阅读Uber的SDK以进行身份​​验证并添加自己的方法来处理用户端点,这样您就可以将Uber添加为提供程序而不是添加全新的OAuth库/框架为你做这件事。

另一个很棒的资源是Vapor OAuth,它写得很漂亮,但技术性更强一些: https://github.com/brokenhandsio/vapor-oauth

如果你是新的网页开发我建议在学习Vapor之前学习一个众所周知的框架,比如React或Angular和Node.js,或者在继续之前有一些本地快速体验。 React和Angular是基于Javascript的Web框架,您可以非常轻松地获得帮助。 React还支持使用React Native进行iOS开发,并且比Vapor使用得更频繁。