对于这样一个笼统的问题,我深表歉意,但这是我第一次为 iPhone 应用程序构建服务器后端。
简单的用例是:当用户第一次启动 iPhone 应用程序时,他们会看到一个登录屏幕,他们可以通过 Facebook、Twitter 登录,也可以手动创建帐户。一旦他们这样做了,他们就可以正常使用该应用程序。下次启动应用程序时,应用程序不需要显示登录屏幕。
在后端,我需要使用 Node.js 和 MongoDB 创建服务器。我注意到有诸如 everyauth 和 Passport.js 之类的身份验证模块。但我的困惑是如何处理这些身份验证和 session 。
例如,对于 Facebook,我知道有一个 Facebook iOS SDK 可用于验证 iPhone 客户端。但是,身份验证应该在哪里进行:在 iPhone 上还是在服务器上?这种常见的情况通常是如何处理的?谢谢!
最佳答案
实际上,它基于您的特定情况的用例,我建议在服务器上处理它,因为您可以在passport.js的帮助下更轻松地在服务器上处理身份验证和 session 管理
由于您有多种方法来验证用户 facebook、twitter 和 basic,因此最好在客户端应用程序上实现单独的库,而不是在服务器“passport.js”上使用支持所有这三种身份验证策略的单个库。
我不确定您在服务器上使用的是什么框架,但我建议使用“Express”作为框架,因为passport.js可以轻松地与express集成,这使得 session 管理变得更加容易。
关于iphone - 使用 iPhone 客户端和 Node.js 服务器进行 Facebook 或 Twitter 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14845006/