【Java搭建WebSocket的两种方式】教程文章相关的互联网学习教程文章

Java使用WebSocket【代码】

网页端的消息推送,一般有以下方式: 轮询方式:客户端定时向服务端发送ajax请求,服务器接收到请求后马上返回消息并关闭连接。 优点:后端程序编写比较容易。 缺点:TCP的建立和关闭操作浪费时间和带宽,请求中有大半是无用,浪费带宽和服务器资源。 实例:适于小型应用。 长轮询:客户端向服务器发送Ajax请求,服务器接到请求后hold住连接,直到有新消息才返回响应信息并关闭连接,客户端处理完响应信息后再向服务器发送新的请求...

java – WebSocket握手:意外的响应代码:404 –【代码】

我正在学习websockets并遵循这里的说明:http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/HomeWebsocket/WebsocketHome.html 我使用tomcat v8.0.21来部署我的webapp但是出现以下错误 当我访问webapp时,我的JavaScript项目看起来很好:我的localhost并访问WebSocketJavaScriptProject 虽然在控制台窗口中出现错误:WebSocket连接到’ws:// localhost:8080 / WebsocketHome / actions’失败:WebSocket握手期间出...

Java -- springboot 配置 Websocket

1.配置依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dependency> 2、配置类package com.vim.common.config;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.socket.server.standard.ServerEndpointExporter;@Configuration public class WebSocket...

websocket-java实现以及与http long poll和轮询的比较

Websocket是一个持久化的协议,相对于HTTP这种非持久的协议来说,Websocket是基于HTTP协议的,或者说借用了HTTP的协议来完成一部分握手 ajax轮询 的原理非常简单,让浏览器隔个几秒就发送一次请求,询问服务器是否有新信息。 long poll 其实原理跟 ajax轮询 差不多,都是采用轮询的方式,不过采取的是阻塞模型(一直打电话,没收到就不挂电话),也就是说,客户端发起连接后,如果没消息,就一直不返回Response给客户端。直到有消息...

java – Websocket无法正常工作:意外响应代码404【代码】

我试图用websockets创建javaee应用程序,但无法让程序正常工作.使用Tomcat 7,带有websockets的Java EE 7应用程序. 这是我的java代码:import javax.websocket.CloseReason; import javax.websocket.EndpointConfig; import javax.websocket.OnClose; import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.RemoteEndpoint; import javax.websocket.Session; i...

java – 如何等待Spring WebSocketStompClient连接【代码】

我使用this guide来实现一个简单的Stomp客户端:WebSocketClient webSocketClient = new StandardWebSocketClient(); WebSocketStompClient stompClient = new WebSocketStompClient(webSocketClient);ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler(); taskScheduler.afterPropertiesSet(); stompClient.setTaskScheduler(taskScheduler); // for heartbeatsstompClient.setMessageConverter(new StringMe...

java – WebSocket Handshake – 意外的响应代码200 – AngularJs和Spring Boot【代码】

当我试图在AngularJS应用程序和Spring Boot之间建立websocket通信时,我收到错误:websocket握手期间出错 – 意外的响应代码:200. 这是我的JS代码:function run(stateHandler, translationHandler, $websocket) {stateHandler.initialize();translationHandler.initialize();var ws = $websocket.$new('ws://localhost:8080/socket'); // instance of ngWebsocket, handled by $websocket servicews.$on('$open', function () {co...

java – 如何使用Spring 4在我的webSocket服务器中捕获连接事件?

我使用spring 4,STOMP和sock.js进行了简单的Web套接字通信,遵循此https://github.com/rstoyanchev/spring-websocket-portfolio和此http://assets.spring.io/wp/WebSocketBlogPost.html 好吧,我想知道是否有可能捕获连接事件,例如当新客户端连接到我的服务器或客户端断开连接时,是否可以在Spring 4.0.0中进行?解决方法:这可以通过连接握手拦截器(HttpSessionHandshakeInterceptor)完成,引用documentation:The easiest way to cust...

WebSocket安全Java配置【代码】

我想保护我的WebSockets,但在配置中有一些麻烦.我正在尝试使用JavaConfig.我需要它来允许只听授权用户的监听websockets.请帮助我解决我的问题 我的WebSocket安全配置:@Configuration public class WebSocketSecurityConfig extends AbstractSecurityWebSocketMessageBrokerConfigurer {@Overrideprotected void configureInbound(MessageSecurityMetadataSourceRegistry messages) {messages.simpMessageDestMatchers("/chat/**")...

java – Jetty WebSockets的Jar / Class问题【代码】

我有WebSockets的问题.使用Jetty 9.1.0和Maven由Java开发环境IntelliJ IDEA Community Edition 12.1.6执行.我创建了两个类(下面的代码).WsHandler类:public class WsHandler extends WebSocketHandler { private final ConcurrentMap<String, Set<EventWebSocket>> eventsSubscribers = new ConcurrentHashMap<>();@Override public WebSocket doWebSocketConnect(HttpServletRequest request, String protocol) {return new Even...

基于java spring的webserver的Android websocket sockjs客户端【代码】

我正在使用Spring 4.1.6.RELEASE和我的服务器配置为使用基于SockJs和STOMP协议的websocket方法从这里http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html,这里我在服务器端的简单xml配置:<websocket:message-broker application-destination-prefix="/app"><websocket:stomp-endpoint path="/hello" allowed-origins="*"><websocket:sockjs/></websocket:stomp-endpoint><websocket:simpl...

java – 如何在android服务中建立WebSocket连接?【代码】

我一直在尝试创建一个Android服务,这将允许我维护websocket连接并及时发送一些数据.我在服务中创建一个处理程序来连接WebSocketClient.但它没有连接.网址正在运行,我也测试了它.如果有人能提供帮助,我非常感谢. 主Activity.javaimport android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os....

Java – Spring 5的反应式WebSockets – 如何获取初始消息【代码】

我遵循了该教程(特别是使用Browser WebSocket Client的部分):http://www.baeldung.com/spring-5-reactive-websockets一切正常. 我想更进一步,让我的处理程序根据客户端发送的参数进行操作.在连接时,客户端正在发送消息(“event-me-from-browser”):var clientWebSocket = new WebSocket("ws://localhost:8080/event-emitter"); clientWebSocket.onopen = function() {console.log("clientWebSocket.onopen", clientWebSocket);co...

java – 当互联网断开连接时重新连接OkHttp websocket【代码】

我有以下课程.我试图让WebSocket在发生故障时重新连接public class WebSocketClient extends WebSocketListener {volatile OkHttpClient client;volatile WebSocket webSocket;volatile Boolean isConnected = false;public WebSocketClient() {Proxy proxy = null;if (Main.useProxy) {tinder.CustomProxy proxyCustom = ProxyManager.GetStaticProxy(ThreadLocalManager.account.get().getProxyId());proxy = new Proxy(Proxy.Ty...

java – Dispatcher-servlet无法映射到websocket请求【代码】

我正在开发一个以Web为主框架的Java webapp(Spring核心,Spring mvc,Spring安全,Spring数据,Spring websocket特别使用). 在这样的Spring上下文中声明一个消息代理,为上下文提供了一个SimpMessagingTemplate bean:<websocket:message-broker><websocket:stomp-endpoint path="/stomp"><websocket:sockjs/></websocket:stomp-endpoint><websocket:simple-broker prefix="/topic,/queue"/> </websocket:message-broker>我必须将此标记...