当前位置: 首页 > wzjs >正文

海南省建设银行官方网站招聘长春专业做网站公司排名

海南省建设银行官方网站招聘,长春专业做网站公司排名,国家的企业信息网,国外免费外贸网站Springboot websocket前端无法访问到,Websocket因AOP代理 前端无法请求到 问题出现 在我后端springboot启动后,前端无法请求websocket请求连接到我们websocket服务器。 想要的效果 在我后端springboot启动后,前端可以请求到我们websocket…

Springboot websocket前端无法访问到,Websocket因AOP代理 前端无法请求到

问题出现

在我后端springboot启动后,前端无法请求websocket请求连接到我们websocket服务器。

想要的效果

在我后端springboot启动后,前端可以请求到我们websocket服务器,并且进行交互。

问题排查

出现的问题A

出现问题的代码:

package com.gsxy.core.config;import org.springframework.context.annotation.Configuration;
import org.springframework.messaging.simp.config.MessageBrokerRegistry;
import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
import org.springframework.web.socket.config.annotation.StompEndpointRegistry;
import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer;@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {@Overridepublic void configureMessageBroker(MessageBrokerRegistry config){config.enableSimpleBroker("/topic");config.setApplicationDestinationPrefixes("/app");}@Overridepublic void registerStompEndpoints(StompEndpointRegistry registry){registry.addEndpoint("/ws").withSockJS();}}

问题出在没有告诉spring遇见wensocket协议该如何处理。

改正后的代码:

package com.gsxy.core.config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.config.annotation.EnableWebSocket;
import org.springframework.web.socket.server.standard.ServerEndpointExporter;@Configuration
@EnableWebSocket
public class WebSocketConfig  {@Beanpublic ServerEndpointExporter serverEndpointExporter() {return new ServerEndpointExporter();}}

出现的的问题B

问题出在Websocket在controller包下,在我们aop SystemAopImpl,对我们的contorller包下进行了所有代码增强。

/*** @author zhuxinyu 2023-10-23*/
@Component
@Aspect
public class SystemAopImpl implements SystemAop {/*** @author zhuxinyu 2023-10-23* 清理ThreadLocal 防止内存泄漏* @param joinpoint* @throws Exception*/@Override@After("execution(* com.gsxy.core.controller.*.*(..))")public void removeAllThreadLocal(JoinPoint joinpoint) throws Exception {ThreadLocalUtil.mapThreadLocalOfJWT.remove();ThreadLocalUtil.mapThreadLocal.remove();ThreadLocalUtil.DataOfThreadLocal.remove();}}

​ 因为在Spring AOP中使用的是IOC 和 AOP动态代理创建对象,在WebSocket中,如果代理类被代理了,可能会出现问题因为WebSocket容器会查找类上的注解,但是无法找到代理类上,因为@ServerEndpoint来自Java标准注解,并不是AOP,如果我们使用的是cglib动态代理技术,执行的是目标类的子类,这个字类包含我们的拦截逻辑和目标方法的引用,所以无法读取到websocket的注解,导致无法访问websocket,因为我们的websocket没有实现接口,默认实现的cglib动态代理技术,所以触犯了这个问题。jdk动态代理,他执行的是代理对象,这个代理类是包含了我们的环绕逻辑和我们目标类的代理对象,所以不会导致注解失效。

总结

使用websocket不能被cglib所代理。

必须告诉spring遇见websocket如何解决


文章转载自:

http://jjm6ugyH.qfgxk.cn
http://wGMWhL13.qfgxk.cn
http://deunPC8D.qfgxk.cn
http://4AaiOOAX.qfgxk.cn
http://jx4bNkFt.qfgxk.cn
http://JGn3blvO.qfgxk.cn
http://j1FIHfsU.qfgxk.cn
http://tTfWnSl7.qfgxk.cn
http://ipLaH0pn.qfgxk.cn
http://QawlxNjQ.qfgxk.cn
http://2jgqDpW3.qfgxk.cn
http://wslNvMCV.qfgxk.cn
http://nk1mJLKk.qfgxk.cn
http://Vuq0Obmp.qfgxk.cn
http://waru9JLk.qfgxk.cn
http://9vp9gPTL.qfgxk.cn
http://tfIygLZM.qfgxk.cn
http://EuJtqK4h.qfgxk.cn
http://5cIt7RUx.qfgxk.cn
http://un302WAi.qfgxk.cn
http://FxTzlrdx.qfgxk.cn
http://mjDbUJmi.qfgxk.cn
http://VFWJvElD.qfgxk.cn
http://9qXzhpB5.qfgxk.cn
http://7l1oHbPi.qfgxk.cn
http://vAX36jOq.qfgxk.cn
http://1VjX5KAh.qfgxk.cn
http://KtPitVJX.qfgxk.cn
http://eOWXgLtl.qfgxk.cn
http://O417U6Ug.qfgxk.cn
http://www.dtcms.com/wzjs/771549.html

相关文章:

  • 网站建设网络推广加盟化州市建设局网站
  • 辛集市住房和城乡建设局网站shanxi建设银行网站首页
  • 万网没备案怎么做网站南宁网站建设公司排行
  • 太原网站专业制作h5一般用什么软件
  • 淮南做网站网站运营一月多少钱
  • 手机微信网站怎么做的好处源码论坛wordpress模板
  • 网站特效模板下载代驾小程序源码
  • 马云做一网站 只作一次ppt一键优化
  • 网页游戏网站排行百度网页版怎么切换
  • 洛阳公司注册天津网站排名优化费用
  • 如何给网站增加图标多少钱要交个人所得税
  • 北京知名网站自己做网站需要的技术
  • 新乡商城网站建设哪家好建筑咨询公司是做什么的
  • 山东鑫泰建设集团网站wordpress添加js代码
  • 西安网站建设专业公司苏州画廊网站建设
  • 简单的购物网站开发新闻热点事件2022(最新)最近
  • 淘宝客网站要多大空间做盗版小说网站 风险
  • 长沙建站智找有为太极网站备案登陆
  • 个人网站样式即给做网站又给我们做推广的公司呢
  • 品牌外贸网站建设深圳知名seo公司
  • 国外有在线做设计方案的网站吗宣传广告设计模板
  • 建设银行安徽分行招聘网站成都网站建设推广详
  • 专业的营销网站建设公司排名wordpress 查询文章
  • 鲜花商城网站设计长沙软件开发公司
  • 个人做discuz网站备案wordpress 积分系统
  • 网站开发遇到的最大困难口红网站建设目标
  • 域名备案网站服务内容网站平台规划方案
  • 建网站打开需要验证长沙有实力seo优化
  • 网页设计如何建立网站珠海公众号开发
  • 做赚钱问卷调查的网站网站首页的概念