关于app接口身份验证问题,请大神看看 谢谢

问题描述

是这样:我身份验证是这么做的,首先app请求登录接口服务端会把登录用户的相关信息连带token(通过用户名、密码、登录时间des加密得到)返回给客户端,同时在服务器上保存(我是用的一个static变量存储的),客户端app每次请求接口都要带上这个token和我服务器上保存的token做对比。那么问题就是:由于我服务器端存储token用的是一个static变量所以每个用户登录会共享这个变量,我要怎么做才能让每个用户登录进来这个变量不共享呢?谢谢各位哥哥解答小弟感激不尽

解决方案

解决方案二:
没有人吗?
解决方案三:
构造一个数据结构:(token,userid)把你原来的静态变量换成map就行了
解决方案四:
引用2楼ygycomon的回复:

构造一个数据结构:(token,userid)把你原来的静态变量换成map就行了

谢谢你的回答么么哒!
解决方案五:
用Map来存放这些token,key是token,value是token的有效时间,这样既可以解决楼主的问题,也可以增加token的时效性认证,如果楼主不需要时效性认证,那就用List来存放这些token吧,不过这样这个List会随着登陆的人登陆的次数越来越多而越来越占内存,用Map的话可以根据时效性删除过时的token,保持那个Map最小
解决方案六:
引用4楼c306081148的回复:

用Map来存放这些token,key是token,value是token的有效时间,这样既可以解决楼主的问题,也可以增加token的时效性认证,如果楼主不需要时效性认证,那就用List来存放这些token吧,不过这样这个List会随着登陆的人登陆的次数越来越多而越来越占内存,用Map的话可以根据时效性删除过时的token,保持那个Map最小

谢谢你!
解决方案七:
引用2楼ygycomon的回复:

构造一个数据结构:(token,userid)把你原来的静态变量换成map就行了

我在问一下这个map是static的吗?
解决方案八:
引用4楼c306081148的回复:

用Map来存放这些token,key是token,value是token的有效时间,这样既可以解决楼主的问题,也可以增加token的时效性认证,如果楼主不需要时效性认证,那就用List来存放这些token吧,不过这样这个List会随着登陆的人登陆的次数越来越多而越来越占内存,用Map的话可以根据时效性删除过时的token,保持那个Map最小

您好,我问下这个map是static的还是实例对象
解决方案九:
用session啊每个用户登录session都是不同的,把对象放在session中不就行了吗
解决方案十:
引用2楼ygycomon的回复:

构造一个数据结构:(token,userid)把你原来的静态变量换成map就行了

我怎么初始化这个map对象引用4楼c306081148的回复:

用Map来存放这些token,key是token,value是token的有效时间,这样既可以解决楼主的问题,也可以增加token的时效性认证,如果楼主不需要时效性认证,那就用List来存放这些token吧,不过这样这个List会随着登陆的人登陆的次数越来越多而越来越占内存,用Map的话可以根据时效性删除过时的token,保持那个Map最小

大神贴个代码出来看看行吗谢谢啊
解决方案十一:
在线等呢挺急的
解决方案十二:
引用8楼u010533788的回复:

用session啊每个用户登录session都是不同的,把对象放在session中不就行了吗

用map哪个你知道么哥哥
解决方案十三:
引用7楼u011508407的回复:

Quote: 引用4楼c306081148的回复:
用Map来存放这些token,key是token,value是token的有效时间,这样既可以解决楼主的问题,也可以增加token的时效性认证,如果楼主不需要时效性认证,那就用List来存放这些token吧,不过这样这个List会随着登陆的人登陆的次数越来越多而越来越占内存,用Map的话可以根据时效性删除过时的token,保持那个Map最小

您好,我问下这个map是static的还是实例对象

用static修饰privatestaticMapmap=newHashMap();
解决方案十四:
用Map来存放这些token,key是token,value是token的有效时间,这样既可以解决楼主的问题,也可以增加token的时效性认证,如果楼主不需要时效性认证,那就用List来存放这些token吧,不过这样这个List会随着登陆的人登陆的次数越来越多而越来越占内存,用Map的话可以根据时效性删除过时的token,保持那个Map最小
解决方案十五:
ThreadLocal
解决方案:
问题解决了,虽然不是在论坛上面解决的

时间: 2024-09-21 13:53:49

关于app接口身份验证问题,请大神看看 谢谢的相关文章

ios-iOS APP审核问题,请大神指点

问题描述 iOS APP审核问题,请大神指点 审核内容存储问题,有谁遇到的,请指点一二. we found that your app does not follow the iOS Data Storage Guidelines, which is required per the App Store Review Guidelines. 解决方案 你的数据存储的方式不符合苹果规范.

soap-C++调用webservice接口出错,具体如图所示,请大神帮忙~~

问题描述 C++调用webservice接口出错,具体如图所示,请大神帮忙~~ 我已经安装了soap toolkit 3.0 不知道为什么还不行~ 报错如下: ------ 已启动生成: 项目: myclient, 配置: Debug Win32 ------ 1>生成启动时间为 2016/1/6 19:01:21. 1>InitializeBuildStatus: 1> 正在对"Debugmyclient.unsuccessfulbuild"执行 Touch 任务.

struts2.0-我写了一个简单的struts2登录验证但是不能跳转,找了好久也不知道为什么,请大神帮忙看一下,先谢了

问题描述 我写了一个简单的struts2登录验证但是不能跳转,找了好久也不知道为什么,请大神帮忙看一下,先谢了 解决方案 SUBMITE提交呢? 解决方案二: 解决方案三: 调试下Action方法进入了吗?

c#-.net网站部署,怎么出现下面问题,如图。请大神教教我

问题描述 .net网站部署,怎么出现下面问题,如图.请大神教教我 匿名用户验证我开启了,而且也是应用程序池标识.弄了好久了就是不行,请大家来看看 HTTP 错误 401.2 - Unauthorized由于身份验证头无效,您无权查看此页.最可能的原因: 未在 IIS 中选择任何身份验证协议(包括匿名). 只启用了集成身份验证,而使用的客户端浏览器不支持集成身份验证. 启用了集成身份验证,并且请求通过代理发出,但代理在请求到达 Web 服务器之前更改了身份验证头. Web 服务器未配置为匿名访问,

menu-菜鸟请大神指教,关于在fragment中加入vierpager的问题

问题描述 菜鸟请大神指教,关于在fragment中加入vierpager的问题 package com.yanis.yc_ui_fragment_menu; import java.util.ArrayList; import java.util.List; import com.health.Circle; import com.health.Information; import com.health.Market; import android.os.Bundle; import andr

一个很奇怪的命名空间问题,请大神解题!

问题描述 昨天晚上在编译初步开发好的程序时,发现一个复杂的机制造成的问题,最终问题确定的原因,就是和awaitasync的支持库有关,但其本质原因是什么?就是想不明白,想请高手们解解题.首先因为我的应用服务端使用了WebApi2.0,客户端使用WinForm进行http访问,为了达到较好的用户体验,客户端采用了awaitasync异步.同时为了支持Winxp,类库只能使用到Net4.0,而Net4.0不支持awaitasync异步.解决这个问题,通过的是微软开发的附加支持包,我使用Nuget安装

struts2 0-spring+struts+hibernate整合问题,请大神帮忙!

问题描述 spring+struts+hibernate整合问题,请大神帮忙! 求大神解答,兄弟初学ssh,今天整合他们三个.报错很多,但是最后竟然可以正确运行(我只实现了一个从数据库读用户名密码来登陆的功能.) 报错如下:(其中第一个错误就是Could not open ServletContext resource [/WEB-INF/applicationContext.xml],我在这个目录下有这个文件的. 而且我的web.xml里有这些内容. contextConfigLocation

android-融云请求token的问题,请大神指点

问题描述 融云请求token的问题,请大神指点 虽然官网上说不建议在app中请求token,但是由于测试的需要,需要在app中网络请求获取token: RequestQueue rq = Volley.newRequestQueue(this); JsonObjectRequest jor = new JsonObjectRequest(Request.Method.POST, "https://api.cn.ronghub.com/user/getToken.json", null,

求解决-c语言问题求解,请大神们指教

问题描述 c语言问题求解,请大神们指教 本题要求实现一个对数组进行循环右移的简单函数:一个数组aa中存有nn(>0>0)个整数,将每个整数循环向右移mm(ge 0≥0)个位置,即将aa中的数据由(a_0 a_1 cdots a_{n-1}a ?0 ?? a ?1 ?? ?a ?n?1 ?? )变换为(a_{n-m} cdots a_{n-1} a_0 a_1 cdots a_{n-m-1}a ?n?m ?? ?a ?n?1 ?? a ?0 ?? a ?1 ?? ?a ?n?m?1 ?? )(最