【发布时间】:2014-02-25 20:24:05
【问题描述】:
我一直在开发一个 RESTful 网络服务,供 Android 原生应用程序使用。我选择 ASP .NET WEB API。 WEB API 使得在控制器中创建这些 HTTP 方法变得非常容易,并将我们的响应对象转换为 json/xml... 简直太棒了!
现在是用户身份验证和那些会话处理部分。首先,我认为在我的 RESTful 服务中实现会话会更容易。但是对于在 WEB API 中启用会话以及让 android 原生来处理这些会话 id 的配置感到非常沮丧。
- 首先Android向WEB API发送登录请求
- WEB API 检查身份验证和响应标头中带有 sessionid 的响应
- 现在 Android 原生读取响应标头->获取 ASPNET_sessionId ->保留在其内存中
- 来自 android 的进一步请求必须在请求标头中设置此 ASPNET_sessionId
你认为这是正确的方法吗?
现在我有了另一个客户。移动 jquery 中的混合应用程序。现在面临以下问题:
- 访问源策略:所以我在响应标头中将
Access-Control-Allow-Origin设置为*。它解决了。 - 现在我需要在 jquery ajax 发布请求中设置会话 ID。发现调用跨域服务时无法为jquery ajax设置headers。
如何管理我的混合应用程序的会话?
此外,在创建必须从不同客户端应用程序使用的 Web 服务时,还需要注意哪些事项?
【问题讨论】:
标签: c# android web-services rest asp.net-web-api