如何进行同步WebScoket连接

匿名用户

我写了一段使用webscoket连接的代码。但是,当我寻找连接关闭时,它会继续执行而无需等待连接关闭。换句话说,“ connection.onclose”是异步的,我如何使其同步。我用Java编写的代码不多。因此,如果有人以同步方式重新编写这段代码,我会觉得很有帮助。

var connection = new WebSocket('wss://IP:PORT');
connection.onclose = function (event) {
    e = (event.code);

}
alert('message!')
quicVO

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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章