springmvc有个接口,请求参数是传的设备序列号,我们打算判断这个客户端请求连接一次的话,这个传的设备序列号打上标记,不允许另外的客户端再访问同样的设备接口,这个该怎么实现?
提供一个思路,基于设备序列号生成 token
目前我就不知道细节
你那个生成token的具体怎么弄得,我开发经验少。。
@等不到天亮: 或者参考 springmvc 用拦截器+token防止重复提交 中的方式
@dudu: 我是用的springboot,但是不会用aop。。
@dudu: 你去qq多少呀,有问题请教下你,我是菜鸟,开发经验少
@dudu: 你这个例子只能接口只能访问一次请求,但没针对设备,况且我们是前后台分离的,token传不到客户端
可以考虑直接用代码实现,比如将第一次传入的设备序列号,存放在set中,下次如果还有请求过来,在set中检查是否已经存在了,如果不存在,继续执行之后的业务,如果存在了。就啥都不干!return
嗯,大概了解了,但是存在了没有清空,下个请求访问不了呀
就是不知道这个请求什么情况下是关闭的
@等不到天亮: 哦~那就是配一个拦截器~在调运业务代码之前,先将序列号存放在set中,业务代码执行完毕后,在调用拦截器,将当前set中的序列号移除。这样下次请求就可以继续重复以上操作。在拦截器中实现上面的校验操作
请求→拦截器→执行业务→拦截器→返回
@队长给我球。: 拦截器不太会用,springboot aop可以吗
@队长给我球。: 不用拦截器吧,直接if else不可以吗
@等不到天亮: 可以啊~这个和拦截器一个道理~
@队长给我球。: 是呀,我想了一下,没必要拦截器呀,这个请求也不是多个地方要拦截,也没啥区别嘛
@队长给我球 你qq多少呀,我加下你,多认识几个大神。。