spring使用websocket的总结
websocket搭建参考https://weixin.sogou.com/weixin?query=spring%20boot%E4%BD%BF%E7%94%A8websocket&ie=utf8&type=2&sourceid=weixinvr
问题1:使用手机浏览器连接不到websocket
网上看了很多都不是能解决的答案,相反还让人越看越烦,越不懂,一开始我以为是手机浏览器不兼容,后面我是偶然的发现了其实压根就不是手机浏览器的问题,而是websocket地址的问题,是我没注意,因为在本地测试的时候都是这样写的
websocket = new WebSocket("ws://127.0.0.1:8881/way/" + userId);
127.0.0.1是本地IP,在自己电脑上用没什么问题,但是用同一个局域网(也就是连接同一个wifi)下的手机去访问就会报错,因为在手机上访问地址还是127.0.0.1,而在手机上访问127.0.0.1其实就是访问手机本身,所以肯定会报错,当时没有注意是因为我把项目都部署到了服务器上,而在服务器上页面上却可以连接到websocket,所以我也没在意是地址的问题,因为固定思维是外网的电脑肯定连接不到我这台电脑上的,后面是我在自己的电脑上的控制台看到我在服务器上的页面写的文字,我当时就纳闷了,我访问服务器页面怎么websocket连接到我自己的电脑上了,突然想到莫非是ip地址,因为部署在服务器上项目的websocket访问地址也是127.0.0.1嘛,然后我在我自己的电脑上访问服务器上的项目,websocket连接的不就是我自己电脑吗!所以我就想到这一点了,然后我就把websocket的访问地址改成了服务器的ip,果然,成功了
所以注意的点是:
websocket访问地址一定要写部署在服务器上的ip地址
websocket访问地址不要写localhost
更多推荐
所有评论(0)