最近测试了一下spring的websocket,遇到了一个比较恶心的问题,在这记录一下。

问题源自之前开发的一个h5项目,这个项目在80端口下一直放着,就顺便在里面随便加了几行代码测试websocket。服务端用tomcat8,Java8,spirng4搭了一个,这里参照

http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html

然后项目中就一直报这个错误

WebSocket connection to 'ws://localhost:8080/springwebsocket/websocket' failed: Error during WebSocket handshake: Unexpected response code: 403

刚开始一直纠结于403从那来的,后来点开源码才发现,spring默认会给一个OriginHandshakeInterceptor的拦截器,这就比较坑了,好歹文档写一下啊,或者有地方配置一下(也有可能楼主好久没用spring,这个拦截器在之前的版本中说明了),总之找到问题就好解决了

registry.addHandler(webSokcetHandler(), "/websocket").addInterceptors(new HandshakeInterceptor()).setAllowedOrigins("http://localhost");

在注册handler的时候加一句setAllowedOrigins就搞定了。

最新文章

  1. JS 获取url参数
  2. java中父类与子类, 不同的两个类中的因为构造函数由于递归调用导致栈溢出问题
  3. 「Unity」与iOS、Android平台的整合:2、导出的Android-Eclipse工程
  4. Beta版本项目展示要求
  5. 【maven + hibernate(注解) +spring +springMVC】 使用maven搭建项目
  6. jQuery设计思想
  7. 【转】补充说明:关于Beaglebone black上debian无图形界面的问题及QT的窗口示例
  8. 跑步进入全站 HTTPS ,这些经验值得你看看
  9. Implement Queue using Stacks 解答
  10. Angular JS 学习笔记(二)
  11. GL应用方面
  12. Python- - -函数目录
  13. 离线安装Cloudera Manager 5和CDH5(最新版5.9.3) 完全教程(五)数据库安装(双节点)
  14. spring-tool-suite使用教程,并创建spring配置文件
  15. 1052: 旋转单词(words)
  16. Swift 基本运算符
  17. 微信小程序web-view(webview) 嵌套H5页面 唤起微信支付的实现方案
  18. bzoj 1036: [ZJOI2008]树的统计Count (树链剖分+线段树 点权)
  19. 【转】java格式化输出 printf 例子
  20. HashMap碰撞问题

热门文章

  1. Js限制Input框只能输入数字
  2. 使用Fiddler工具发送post请求(带有json数据)以及get请求(Header方式传参)
  3. linux查看磁盘是否SSD盘
  4. 【视频开发】【CUDA开发】ffmpeg Nvidia硬件加速总结
  5. 【C/C++开发】多线程编程中的join函数
  6. mysql创建用户并授权Repl_slave_priv和Repl_client_priv
  7. php imagick 获取psd图层信息
  8. [转帖]Latch
  9. Linux学习-基本命令文件操作
  10. sync包 — 汇总