我写了一段使用webscoket连接的代码。但是,当我寻找连接关闭时,它会继续执行而无需等待连接关闭。换句话说,“ connection.onclose”是异步的,我如何使其同步。我用Java编写的代码不多。因此,如果有人以同步方式重新编写这段代码,我会觉得很有帮助。
var connection = new WebSocket('wss://IP:PORT');
connection.onclose = function (event) {
e = (event.code);
}
alert('message!')
JavaScript不允许您等待同步代码,因此请使其异步。如果您需要使其同步,则有可能,但并不理想。
同步
var connection = new WebSocket('wss://IP:PORT');
var e;
function nextstuff() {
alert('message!');
};
connection.onclose = function (event) {
e = (event.code);
nextstuff();
};
异步
(async function() {
var connection = new WebSocket('wss://IP:PORT');
var e;
await new Promise(function(res) {
connection.onclose = function (event) {
e = event.code;
res(event);
}
});
alert('message!');
})();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句