【发布时间】:2014-09-05 16:54:33
【问题描述】:
我正在考虑开发一个移动应用程序,与旧的 Web 应用程序集成。
我的第一个想法是使用 PhoneGap(在 VS 2013 上有新的支持)和 REST WebApi 服务。
这个想法是让我的网络应用程序具有注册、登录等功能(使用 ASP.NET 身份)。 以及具有注册、登录等功能的移动应用程序(使用包装器或带有令牌身份验证的 ASP.NET Identity 之类的东西) 基本上在我的移动应用程序上反映网络应用程序的功能(仅具有身份验证和授权差异)。
到目前为止一切顺利。
但是在网上搜索我没有找到任何与我的 asp.net 身份模块集成的好例子。 目前我知道移动应用程序不支持cookie,所以想法是使用“令牌认证”。但我找不到一个很好的例子来实现这一点并补充我的网络应用用户数据库。
有像我要求的教程或示例项目吗?开发此功能的最佳方法是什么?
提前致谢。
【问题讨论】:
-
通过 REST 服务发送凭据,检索令牌并将其存储在本地,例如在 localStorage 中,然后在每个请求中添加存储在 localhost 中的令牌。
-
在最近的一个项目中,我能够使用 MVC 5 中内置的 vanilla“承载”令牌身份验证以及 Cordova 应用程序。登录,您会在回复中获得一个令牌。将令牌存储在 localStorage 中,并将其包含在应用程序的 REST 请求的标头中。抱歉,暂时没时间写好答案。
-
@MattJ。所以..你只使用谷歌/微软/Facebook登录的身份验证?没有来自 ASP.NET Identity 的自定义注册?
-
也使用了 .Net 和 Facebook 的自定义注册。但最终创建了我自己的令牌,我将其作为参数传递给每个休息调用,而不是标题中的“承载 xxxx”。有点非传统但有效并提供了更多控制权。抱歉,我只是看了一下代码,看看这里有没有什么值得分享的,但是它与其他东西的结合太紧密了。