草庐IT

WebSocket注解

全部标签

通过使用WebSocket使前后端数据交互

1.对WebSocket的了解WebSocket是一种在单个TCP连接上进行全双工通信的协议WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据在WebSocketAPI中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。特点较少的控制开销更强的实时性保持连接状态更好的压缩效果2.在pom.xml文件中添加WebSocket组件依赖org.springframework.bootspring-boot-starter-websocket2.7.33.使用依赖组件ServerEndpointExporter构建配

C# WebSocket 客户端 使用 TouchSocket WebSocketClient

由于涉及到连接某音的弹幕数据,所以需要WebSocket,百度了一圈,有C#原生的WebSocket,看了看,看不懂,无奈换一个,TouchSocket来到了我的面前,网上对于这个插件的评价较高,所以使用之。结果,一堆问题之。唉。抄袭这么难吗?如果由TouchSocket开发服务端,并且用TouchSocket客户端链接,这样内部使用是没有问题的,B站上也有一大堆视频,问题是,如果我想连接到别人的地址怎么办,尤其是涉及到Cookie和Head参数设置时,问题就来了。折腾了两天,各种百度都没什么有用的文章,这一点确实比Python差的太多了。所以直接干源码吧,毕竟开源的有这个优势。gitclon

vue项目部署在nginx,vue开发环境代理websocket请求,线上nginx代理websocket请求。

1.vue文件中写法data(){ return{ ws:null, wsUrl:`ws://${location.host}/wsct`, }}........wsInit(){this.ws=newWebSocket(this.wsUrl);}.........2配置开发环境打包规则,一般在vue.config.js中devServer:{......proxy:{//代理websocket请求'/wsct':{target:'真正开发环境的websoket地址',changeOrigin:true,//是否允许跨域pathRewrite:{'^/wsct':'',//重写,},ws:tr

前端创建WebSocket时报错,怎么捕获异常

UncaughtDOMException:Failedtoconstruct‘WebSocket’:TheURL‘XXX’isinvalid.前端newWebSocket();时报错搜了半天两种说法:1.在onerror的回调中捕获2.设计缺陷,捕获不了第一种说法明显不可以,这是创建时出错,这时WebSocket对象还没有创建成功,它哪里来的onerror方法这里我利用proxy对WebSocket的构造函数进行了拦截:constWebSocketProxy=newProxy(WebSocket,{construct:function(target,arg){try{returnnewtarg

post请求可以不加@RequestBody注解么?使用与不使用@RequestBody注解的区别

文章目录1、添加@RequestBody注解2、不添加@RequestBody注解1、添加@RequestBody注解@RequestBody只能处理json格式的数据。使用@RequestBody注解时,用于接收Content-Type为application/json类型的请求,数据类型是JSON:{“aaa”:“111”,“bbb”:“222”}2、不添加@RequestBody注解不加@RequestBody可以支持表单的默认格式,但是不能处理json格式的数据(在restTemplete进行远程服务调用时,是以json格式进行实体类传参的)说明:不使用@RequestBody注解时,

websocket报org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer错误

背景当前项目中需要对websocket长时间的推送数据,但是在谷歌浏览器中就链接相对稳定,在安卓发布屏中会存在15min-60min或者更长时间的断开,报错信息如下:报错信息org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1301),org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1234),org.apache.tomcat.websocket.server.

Java 4种校验注解(值校验、范围校验、长度校验、格式校验)

1值校验1.1@NotNull注解被注解的元素必须不为空,一般用于数值类型的参数校验@NotNull(message="用户编号不能为空")privateIntegeruserId;1.2@NotBlank注解验证注解的元素值不为空(不为null、去除首位空格后长度为0),并且类型为String。@NotBlank(message="用户名称不能为空")privateStringuserName;1.3@NotEmpty注解验证注解的集合类参数不能为空。@NotEmpty(message="用户列表不能为空")privateListuserIds;2范围校验2.1@Min注解被注解的元素其值必

@NotEmpty、@NotBlank、@NotNull三种注解的区别

@NotNull:用在基本数据类型的非空校验,不能为null,但可以为empty。而且被其标注的字段可以使用@size、@Max、@Min对字段数值进行大小的控制@NotEmpty:用在集合类或数组上,不能为空,但长度必须大于0@NotBlank:只能用在String类型上的非空校验,不能为空,而且调用trim()后,长度必须大于0(即必须有实际字符)注意:注意在使用@NotBlank注解时,一定要和@valid一起使用,否则@NotBlank不起作用。一个BigDecimal的字段使用字段校验标签应该为@NotNull。@Length:一般用在String类型上可对字段数值进行最大长度限制的

Java websocket简单介绍和使用

一、什么是websocket?(基于TCP的全双工通信协议)WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC6455,并由RFC7936补充规范。WebSocketAPI也被W3C定为标准。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocketAPI中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。二、websocketsession发送文本消息两个方法方法的区别session.getAsyncRemote()表

[JAVA]websocket引起的内存泄漏问题排查

文章目录websocket引起的内存泄漏问题排查1问题描述2问题分析与排查2.1宏观分析2.2查看gc回收日志2.3寻找导致内存泄漏的根源3解决办法3.1临时办法-减小buffersize3.2更换Tomcat版本websocket引起的内存泄漏问题排查1问题描述项目运行一天后出现了java.lang.OutOfMemoryError:GCoverheadlimitexceeded的错误,造成系统宕机。这说明给JVM分配的内存已经耗尽,不足以支撑垃圾回收进行内存回收工作,意味着程序占用的内存随着时间大小提升,最终耗尽。2问题分析与排查2.1宏观分析从字面意思来看,GC(garbagecolle