Tag: websocket

Java websocket主机?

我正在尝试一些多人游戏的想法,我正在尝试创建一个Java应用程序来提供基于Web浏览器的多人游戏。 我的开发环境是主机上的Eclipse,以及笔记本电脑上的记事本+谷歌浏览器。 我在客户端使用javascript创建websocket,并在服务器端使用java.net.Socket。 我已经设法在两端确认连接,但似乎无法在客户端关闭连接的情况下发送或接收它们之间的任何数据(甚至没有错误;只是看起来吓坏了某事并调用套接字。关)。 有没有人有任何想法? 这是一些代码: 客户: var socket; function init() { socket = new WebSocket(“ws://192.168.0.3:10000”); socket.onopen = function() { alert(‘OPEN: ‘ + socket.readyState); } socket.onmessage = function (msg) { alert(‘DATA: ‘ + msg.data); } socket.onerror = function (msg) { alert(‘DATA: ‘ + msg.data); } socket.onclose = function () { alert(‘CLOSED: ‘ + socket.readyState); } […]

带有Tomcat的JSR-356 WebSockets – 如何限制单个IP地址内的连接?

我创建了一个JSR-356 @ServerEndpoint ,我想在其中限制来自单个IP地址的活动连接,以防止简单的DDOS攻击。 请注意,我正在搜索Java解决方案(JSR-356,Tomcat或Servlet 3.0规范)。 我尝试过自定义端点配置程序,但即使在HandshakeRequest对象中我也无法访问IP地址。 如何在没有像iptables这样的外部软件的情况下限制单个IP地址的JSR-356连接数?

使用java websocket API和Javascript上传文件

我正在研究websocket并且已经使用websocket / json完成了聊天程序。 但我坚持上传ATM的文件。 任何建议和答案都会感激不尽。 服务器端: package websocket; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.nio.ByteBuffer; 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.Session; import javax.websocket.server.ServerEndpoint; @ServerEndpoint(“/receive/fileserver”) public class FileServer { @OnOpen public void open(Session session, EndpointConfig conf) { System.out.println(“chat ws server open”); } @OnMessage public void […]

Okhttp android Websocket和Jetty Server连接SSL

我有下面给出的okhttpclient android websocket和jetty独立服务器。 我必须为android客户端和jetty服务器之间的通信启用强大的安全性。 我在客户端面临问题,如下所示。 服务器端 package com.wss.okhttp; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.cert.Certificate; import java.security.cert.CertificateException; import java.security.cert.CertificateFactory; import javax.servlet.ServletException; import javax.websocket.DeploymentException; import javax.websocket.server.ServerContainer; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; import org.eclipse.jetty.server.SslConnectionFactory; import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.util.ssl.SslContextFactory; import org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer; public class JettySSLServer { public static void main(String[] args) throws IOException […]

连接到websocket时我得到状态200,但这是一个错误?

我的错误显示在浏览器的控制台中: “WebSocket connection to ‘ws://localhost:32768/DspClusterWebServices/myHandler’ failed: Unexpected response code: 200” 我使用的是Spring Websockets 4.1.5和Tomcat 8.0.18 。 我的WebSocketConfigurer实现类如下所示: @Configuration @Controller @EnableWebSocket public class WebSocketConfig implements WebSocketConfigurer { class MyHandler implements WebSocketHandler { @Override public void afterConnectionEstablished(WebSocketSession session) throws Exception { System.out.println(“afterConntectionEstablished called”); } …implements rest of functions with a System.out.println and false for supportsPartialMessages() } } @Override […]

Spring中的Websocket身份validation和授权

我一直在努力用Spring-Security正确实现Stomp(websocket) 身份validation和授权 。 对于后代,我会回答我自己的问题,提供指导。 问题 Spring WebSocket文档(用于身份validation)看起来不清楚ATM(恕我直言)。 我无法理解如何正确处理身份validation和授权 。 我想要的是 使用登录名/密码validation用户。 防止匿名用户通过WebSocket进行连接。 添加授权层(用户,管理员,…)。 Principal可以在控制器中使用。 我不想要的 在HTTP协商端点上进行身份validation(因为大多数JavaScript库不会与HTTP协商调用一起发送身份validation标头)。