gpt4 book ai didi

html - 如何使用多个发送(请求)实现HTML5 WEB套接字

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

我有一个Web套接字服务,我需要它来获取多个请求。
我使用网址初始化Web套接字,并且需要发送大约200个json请求。
所以我的问题是

最佳方法是什么?

我是否需要为每个请求单独打开Web套接字?
代码:

var ws = new WebSocket("wss://api.example.com/api/");

ws.onopen = function() {
ws.send(
JSON.stringify({
"method": "getItem",
"params": {
"color": "WHITE"
}
})
);
};

ws.onmessage = function(evt) {
var received_msg = evt.data;
console.log(received_msg);
};

因此,在此示例中,我需要此JSON请求的200倍以上:
JSON.stringify({
"method": "getItem",
"params": {
"color": "WHITE"
}
})

最佳答案

我会考虑添加一个消息队列(这可能是一个简单的数组),并尽可能地在队列中发送消息。

IE。:

ws.queue = []

ws.onmessage = function(evt) {
var received_msg = evt.data;
console.log(received_msg);
while(evt.target.queue.length) {
evt.target.send(evt.target.queue.pop());
}
};

ws.onopen = function(evt) {
while(evt.target.queue.length) {
evt.target.send(evt.target.queue.pop());
}
}
ws.queue.push( JSON.stringify({
"method": "getItem",
"params": {
"color": "WHITE"
}
}) );

这是一个快速而肮脏的示例,但是我确信类似的方法也可以使用。

关于html - 如何使用多个发送(请求)实现HTML5 WEB套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47983140/

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