将使用全局变量的websocket代码重构为事件/异步编程

时间:2019-03-03 20:57:24

标签: javascript websocket global-variables refactoring

我正在尝试添加一些其他人的代码。它正在使用websockets与服务器通信,而服务器很可能无法更改(服务器运行在3 $微控制器上...)

例如,当将数据上传到服务器时,使用的模式包括使用全局变量,然后在套接字上发送一系列消息,以及具有一个“ onmessage”来处理响应。考虑到它假设一次只进行一个套接字调用,这似乎很笨拙(我认为服务器实际上可以保证)。服务器发送的消息可以是多条消息,甚至弄清楚消息何时完成也是很麻烦的。

我正在考虑制作东西,以便更好地处理东西,大部分情况是能够知道响应何时到达(并完成),例如

function save_file(name, data, callback) {

}

也许在某个时候我甚至可以将它们转换为异步函数。

有两个想法:  -我可以在websocket对象中找到某种标识符,使我可以更好地将请求和响应串在一起吗?  -除此之外,正确的模式是什么?我开始使用自定义事件,这使我能够更好地绑定整个过程,在这里我可以通过将回调附加到事件来提供回调,但是即使执行removeEventListener也很棘手,因为我需要保持对每个侦听器的引用以确保我以后可以删除它们。

有人建议吗?

0 个答案:

没有答案
相关问题