gpt4 book ai didi

java - 为什么 websocket.send() 依赖于alert?

转载 作者:行者123 更新时间:2023-12-03 11:51:03 29 4
gpt4 key购买 nike

我使用 websockets 和 Glassfish。我在加载页面上调用 start() 函数。当启动功能包含警报时,它会将消息发送到服务器,但是当我不放置警报时,它不起作用。我不明白为什么。

Java 脚本

function start() {
alert('a'); //this alert
webSocket.send('start_server');
}

function onMessage(event) {
document.getElementById('messages').innerHTML
+= event.data;
}

服务器端

@OnMessage
public void onMessage(String message, Session session)
throws IOException, InterruptedException {

System.out.println("Message recieved");
session.getBasicRemote().sendText(message);

}

@OnOpen
public void onOpen() {
System.out.println("Client connected");
}

最佳答案

在客户端哪里初始化网络套接字?警报会暂停执行,直到您单击“确定” - 所以我猜您的执行顺序是错误的(在 webSocket.send 之前初始化 websocket)

您可以在WebSocket#open事件发生后发送数据。

var 连接 = new WebSocket(...)
连接.onopen = 函数() {
连接.send('Ping');
};

来源:html5rocks

关于java - 为什么 websocket.send() 依赖于alert?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25836010/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com