基于承载授权算法调用Web服务

时间:2016-07-18 06:14:10

标签: java android web-services rest

我们有一个Android应用程序,我们应该在它上面调用一些Web服务。 后端服务适用于承载授权算法。当用户登录时,服务器为他提供访问令牌,此令牌有效约一个小时。 当我们调用服务时,我们将此标记作为HTTP标头发送。如果令牌有效,那就OK了。但是当令牌无效时,服务器会给我们一个错误,我们必须调用另一个服务来获取新令牌并使用此新令牌调用该服务。 我的问题是,有没有任何模式来实现这个工作流程? 或者关于此类网络服务的任何其他想法。

先谢谢

1 个答案:

答案 0 :(得分:0)

这是我之前实施的解决方案

  1. 在您的网络服务中编写身份验证功能,该功能将为用户生成并存储TOKEN。如果凭据正常,则返回TOKEN
  2. 以安全的方式将TOKEN存储在您的Android应用程序中。
  3. 在每次网络服务电话中使用TOKEN作为主要参数
  4. 对于每个Web服务调用,必须使用以下命令检查令牌 数据库
  5. 您还可以使用令牌来识别用户
  6. 如果用户从其他设备登录,则认证功能应生成新的TOKEN然后存储并返回它(与第1点相同)
  7. 然后新令牌仅适用于webservice调用。旧的经过身份验证的设备应返回无效令牌'