gpt4 book ai didi

javascript - 等待 socket.on ('answerToRequest' ) 可以使用 Socket.io 吗?

转载 作者:太空宇宙 更新时间:2023-11-04 03:13:01 25 4
gpt4 key购买 nike

以下情况是否可能?

async function doesSocketAgree(){
socket.emit('doesOtherSocketAgree', otherSocketId);
await socket.on('responseDoesSocketAgree', (answer)=>{
console.log('answer');
});
}

最佳答案

在socket.io中,您可以使用“确认”回调:

async function doesSocketAgree(){
await new Promise(resolve => {
socket.emit('doesOtherSocketAgree', otherSocketId, (answer) => {
resolve(answer);
});
});
}

https://socket.io/docs/#Sending-and-getting-data-acknowledgements

因此您可以使用单个 emit() 并可以触发回调。这样做的好处是,您不必在每次调用此函数时都注册事件监听器来处理内存泄漏。

关于javascript - 等待 socket.on ('answerToRequest' ) 可以使用 Socket.io 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60271984/

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