客户端连接WebSocket服务器时连接失败会出现的一些问题及解决方案

前段时间自己在本地写的一个WebSocket程序部署到服务器出现了几个错误,我自己也做了记录和分析,最后总结出来给大家看一下,希望能帮助大家规避掉这些问题。同时给现在正在做WebSocket和正准备想做WebSocket的程序猿多指出一条较为效率的路。


Q1 客户端链接WebSocket服务器时连接失败,报404错误。

   排查了地址错误和配置相关后,是因为JAR冲突,因为Tomcat7及以上,在Tomcat根目录的lib里已经有了websocket-api.jar,部署项目的时候如果项目的wen-inf的lib下也有websocket-api-jar会冲突,导致连接不上。    


Q2 本地运行正常,连接到服务器上时出错

   本地环境:JDK1.8(32位)Tomcat8.0

   服务器环境:JDK1.8(64位)Tomcat8.0

   本地运行是正常的,在服务器部署运行时可以打开页面,并执行WebSocket连接失败并关闭的代码。

   在Tomcat8部署的项目不要导入catalina.jar和WebSocket-api.jar这两个包,因为Tomcat8自带有这两个包。自己再导入的话会有冲突,还有就是IP写服务器的IP地址,不要写localhost,在调试远程服务器的Websocket程序时,要关闭本地的Tomcat服务器。


Q3 客户端链接WebSocket服务器成功后,测试消息推送获取session失败。(java WebSocket)

   这时一定要注意,客户端连接服务器时的地址如果使用了localhost:8080/,那么浏览器也一定要使用localhost:8080/,不然两个请求不是同一个session,所以会获取不到。


Q4 WebSocket链接服务器报302错误

    链接重定向,可以检查一下是不是后台访问机制的问题,还有可以看一下是不是URL路径不对。


  这是我写的WebSocket程序部署到服务器出现的几个错误以及解决方法,如果我下次还会用到WebSocket这块我可能会选择第三方的……不想在这块花太多时间。

  现在免费的第三方WebSocket服务有很多,我就不一一列举了,拿个比较简单容易上手的GoEasy,调用了一个Rest API就OK了。如果你不是专业做服务器的,我建议可以使用这种第三方的,比较节省时间。

GoEasy地址:www.goeasy.io

希望这次的解答对你们有所帮助。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 很多时候我都困得像囚徒的眼泪总在梦里凿开二次元通道那里没有一丝黑暗我赤身裸体在海天之间恣意徜徉——2017-09-07
    小者阅读 1,293评论 0 0
  • 过年,这两个字具有神奇的魔力,在中国,大事小事任何事度能因“过年”二字让步。过年二字让人变的格外亲切,平增一份亲情...
    平凡的yiyi阅读 251评论 0 0
  • DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口)。DOM描绘了一个层次化的节点树,...
    Wonder233阅读 367评论 0 0
  • 姓名:梁德宝 单位:宁波大发化纤有限公司 组名:乐观一组 期数:六项精进234期学员 日精进打卡第53天 【知~学...
    梁德宝阅读 169评论 0 0

友情链接更多精彩内容