websocket握手拦截的时候获取到不是同一个session的一个小坑

https://blog.****.net/panda929/article/details/52872128

自己在用spring的websocket的时候,在request获取session的时候一直是null,后来发现是自己把自己坑了

websocket握手拦截的时候获取到不是同一个session的一个小坑


websocket握手拦截的时候获取到不是同一个session的一个小坑websocket握手拦截的时候获取到不是同一个session的一个小坑


websocket握手拦截的时候获取到不是同一个session的一个小坑websocket握手拦截的时候获取到不是同一个session的一个小坑

代码是这样的,自己是新手,参照网上写的,本来用的没什么问题,做的东东能两个人相互聊天还高兴了好久,结果第二天来懵了,一直获取不到session

在websocket握手的时候,session是null,发现requestedSessionId的值也改变了

再上一张图

websocket握手拦截的时候获取到不是同一个session的一个小坑websocket握手拦截的时候获取到不是同一个session的一个小坑

看到区别了吗?

websocket握手拦截的时候获取到不是同一个session的一个小坑websocket握手拦截的时候获取到不是同一个session的一个小坑

因为我地址栏用的是localhost,但是websocket连接的时候是用的本机的ip地址,虽然都能访问,但是session是找不到的,或者获取的session不是同一个session,把自己坑了一上午

希望能够帮到碰到类似问题的朋友


相关知识:

localhost 127.0.0.1和本机ip三者的区别

localhost 
不联网 
不使用网卡,不受防火墙和网卡限制 
本机访问 

127.0.0.1 
不联网 
网卡传输,受防火墙和网卡限制 
本机访问 

本机IP 
联网 
网卡传输 ,受防火墙和网卡限制 
本机或外部访问