相关文章推荐
酷酷的煎鸡蛋  ·  Golang WebSocket Ping ...·  4 周前    · 
飘逸的荔枝  ·  WebSockets support in ...·  2 周前    · 
活泼的香槟  ·  module 'cv2' has no ...·  3 月前    · 
刚分手的钱包  ·  Delphi 7 GIF in ...·  1 年前    · 
文质彬彬的椰子  ·  在Unity中使用.Net ...·  1 年前    · 

页面访问java websocket服务时,出现异常,Firefox下的异常是:Firefox 无法建立到 ws://... 服务器的连接;

IE下的异常是:WebSocket Error: Incorrect HTTP response. Status code 404, Not Found

环境是:apache-tomcat-7.0.62、jdk1.7.0_67、@ServerEndpoint("/websocket")这种声明式写法

我的排查步骤:

1、tomcat的JAVA_HOME指向jdk7

2、Firefox参数调整,据说默认是关闭websocket的,但是我的版本是38.0.6,没有关闭

3、web.xml头部改为<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">

4、最后发现,是由于我引入了一个javax.websocket-api.jar放到了WEB-INF/lib/下面,可能跟tomcat7的websocket-api.jar有冲突。

去掉javax.websocket-api.jar后异常消失

<!DOCTYPE html>
<meta charset="UTF-8">
<title>Testing websocket</title>
</head>
		<input type="submit" value="Start" οnclick="start()" />
		<input type="button" value="Stop" οnclick="stop()" />
	<div id="messages"></div>
	<script type="text/javascript">
		console.log(window.WebSocket);
		var webSocket = new WebSocket('ws://127.0.0.1:8088/WebModule/websocket');
		webSocket.onerror = function(event) {
			onError(event)
		webSocket.onopen = function(event) {
			onOpen(event)
		/* webSocket.onclose = function(event){
			alert("要离开了?");
		}; */
		webSocket.onmessage = function(event) {
			onMessage(event)
		function onMessage(event) {
			document.getElementById('messages').innerHTML += '<br />'
					+ event.data;
		function onOpen(event) {
			document.getElementById('messages').innerHTML = 'Connection established';
		function onError(event) {
			alert(event.data);
		function start() {
			webSocket.send('hello');
			return false;
		function stop() {
			webSocket.send('bye bye!');
			webSocket.close();
	</script>
</body>
</html>
import java.io.IOException; import javax.websocket.OnClose; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.server.ServerEndpoint; @ServerEndpoint("/websocket") public class WebSocketTest { @OnMessage public void onMessage(String message, Session session) throws IOException, InterruptedException{ // Print the client message for testing purposes System.out.println("Received: " + message); // Send the first message to the client session.getBasicRemote().sendText("This is the first server message"); // Send 3 messages to the client every 5 seconds int sentMessages = 0; while(sentMessages < 3){ Thread.sleep(5000); session.getBasicRemote().sendText("This is an intermediate server message. Count: " + sentMessages); sentMessages++; // Send a final message to the client session.getBasicRemote().sendText("This is the last server message"); @OnOpen public void onOpen(){ System.out.println("Client connected"); @OnClose public void onClose(){ System.out.println("Connection closed"); 页面访问java websocket服务时,出现异常,Firefox下的异常是:Firefox 无法建立到 ws://... 服务器的连接;IE下的异常是:WebSocket Error: Incorrect HTTP response. Status code 404, Not Found环境是:apache-tomcat-7.0.62、jdk1.7.0_67、@ServerEndp
iis部署网站浏览出现火狐浏览器 无法 连接 服务器 Firefox 无法 建立 服务器 连接 。 首先查看ip地址 开始——cmd-ipconfig 发现ip地址和部署网站的地址不一样 更改iis网站ip地址:右击网址——编辑绑定——编辑单击倒三角——选中你要更改的ip——确定 转载于:https://www.cnblogs.com/deram/p/5583397.html...
页面访问java websocket 服务时,出现异常, Firefox 下的异常是: Firefox 无法 建立 ws ://... 服务器 连接 ; IE下的异常是: WebSocket Error: Incorrect HTTP response. Status code 404, Not Found 环境是:apache- tomcat -7.0.62、jdk1.7.0_67、@ServerEndp
Firefox 无法 建立 到 localhost:8080 服务器 连接 。今天登录系统时遇到了这个问题, 服务器 正常,一直找不到错误,原来是端口号改过了忘了。查找端口号,我的是8081,改为8081,登录正常。 无法 建立 连接 ,原因很多,仅供大家遇到类似问题参考。
这是Chrome报的错: WebSocket connection to ' ws ://127.0.0.1:8000/md_admin/test_socket' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED 这是FF报的错: Firefox 无法 建立 ws ://127.0.0.1:8000/md_ad...
1. Firefox 和 Chrome 浏览器对SSL证书拒绝的错误提示是不一样的: (1) Chrome报错: WebSocket connection failed: Error in connection establishment: net::ERR_CERT_AUTHORITY_INVALID (2) Firefox 报错: Firefox 无法 建立 ws s://www...
ws :Node.js WebSocket ws 是一种易于使用,快速且经过全面测试的 WebSocket 客户端和 服务器 实现的方法。 通过相当广泛的Autobahn测试套件: , 。 注意:此模块在浏览器中不起作用。 文档中的客户端是对后端的引用,该后端在 WebSocket 通信中具有客户端的角色。 浏览器客户端必须使用本机对象。 为了使相同的代码在Node.js和浏览器上无缝运行,可以使用npm上可用的许多包装之一,例如 。 HyBi草稿07-12 (使用选项protocolVersion: 8 ) HyBi草稿13-17 (当前默认,或者选项protocolVersion: 13 ) npm install ws 选择加入性能和规范 ws 模块可与2个可选模块一起安装。 这些模块是二进制附件,可改善某些操作。 预编译的二进制文件可用于大多数流行的平台,因此您不一定需要在计算机上安装C ++编译器。 npm install --save-optional bufferutil :允许有效地执行操作,例如屏蔽和取消屏蔽 WebSocket 帧的数据有效负载。
内网IP: 192.168.0.96 1 环境搭建 webrtc的 服务器 包括:房间 服务器 (apprtc)、信令 服务器 (collider)、防火墙打洞 服务器 (coturn)、web/ websocket 代理 服务器 (nginx)。 1.1 coturn apt update apt install coturn > vi /etc/default/coturn TURNSERV
回答: 根据提供的引用内容, WebSocket 连接 到' ws ://zh.whzd.wang/arcGpt/ websocket /1714770640800407'的问题可以通过修改配置文件来解决。你可以在Vue项目的config.vue文件中添加以下配置信息: devServer: { host: '0.0.0.0', port: 6103, client: { webSocket URL: ' ws ://0.0.0.0:6103/ ws ', headers: { 'Access-Control-Allow-Origin': '*', 这样配置后, WebSocket 连接 应该能够成功 建立 。\[3\] #### 引用[.reference_title] - *1* [vue项目使用 websocket 时报错: connection to ‘ ws ://...‘failed: Error in connection establish](https://blog.csdn.net/weixin_65793170/article/details/128127889)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [vue 报错: WebSocket connection to ‘ ws ://192.168.51.116:3000/ ws ‘ failed:](https://blog.csdn.net/sherlyxoxo/article/details/125647887)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [ WebSocket connection to ‘ ws ://xxx.xxx.x.xxxx:8080/ ws ‘failed:问题](https://blog.csdn.net/z914020826/article/details/127232233)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
RocketMQ:The producer group has been created before, specify another name please. tenc1239: 听是听懂了 但是不会写 Java下载https图片报错:unable to find valid certification path to requested target Bai白白白白: 这个,真没看懂 支付宝:验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配 烫头喝酒抽烟: 大佬问一下,certificateExecute这种方式,是自动签名和验签了嘛,不需要自己手动签名验签了吧 spring-data-elasticsearch嵌套对象 weixin_45352620: 如果是springboot整合es 应该放到哪里创建啊 让spring5.0支持velocity IT_老王: 楼主太厉害了,赞一个