Javascript 如何使用socket.io发送长复杂数组?
我有一个包含大量base64数据的复杂数组。我用socket.io将这个数组发送到服务器。 如果我发送一个包含一个或两个base64数据的数组。该功能正在成功运行。但是如果我发送一个包含大量base64数据的数组。功能不起反应 我的目标Javascript 如何使用socket.io发送长复杂数组?,javascript,node.js,arrays,socket.io,Javascript,Node.js,Arrays,Socket.io,我有一个包含大量base64数据的复杂数组。我用socket.io将这个数组发送到服务器。 如果我发送一个包含一个或两个base64数据的数组。该功能正在成功运行。但是如果我发送一个包含大量base64数据的数组。功能不起反应 我的目标 const MyArray = [ { div_id:div.id, div_innerhtml:div.innerHTML, //<img src=base64... div_backgroundimage : div.backgroundimage
const MyArray = [
{
div_id:div.id,
div_innerhtml:div.innerHTML, //<img src=base64...
div_backgroundimage : div.backgroundimage //base64...
}
]
const MyArray=[],SaveBtn = document.queryselector("#save_div");
const SendArray = (ARRAY)=>{
socket.emit("div_data",ARRAY);
}
SaveBtn.onclick = ()=>{
SendArray(MyArray);
}
socket.on("div_data",(data)=>{
console.log(data) // function does not react.
let JSON_DATA = JSON.stringify(data)
console.log(JSON_DATA) // function does not react.
});
- 客户将准备模板
- 当客户端单击“保存”按钮时,它会使用socket.io将此模板发送到服务器
- 发送到服务器的模板将与NodeJ一起保存到硬盘
const MyArray = [
{
div_id:div.id,
div_innerhtml:div.innerHTML, //<img src=base64...
div_backgroundimage : div.backgroundimage //base64...
}
]
const MyArray=[],SaveBtn = document.queryselector("#save_div");
const SendArray = (ARRAY)=>{
socket.emit("div_data",ARRAY);
}
SaveBtn.onclick = ()=>{
SendArray(MyArray);
}
socket.on("div_data",(data)=>{
console.log(data) // function does not react.
let JSON_DATA = JSON.stringify(data)
console.log(JSON_DATA) // function does not react.
});
服务器端代码
const MyArray = [
{
div_id:div.id,
div_innerhtml:div.innerHTML, //<img src=base64...
div_backgroundimage : div.backgroundimage //base64...
}
]
const MyArray=[],SaveBtn = document.queryselector("#save_div");
const SendArray = (ARRAY)=>{
socket.emit("div_data",ARRAY);
}
SaveBtn.onclick = ()=>{
SendArray(MyArray);
}
socket.on("div_data",(data)=>{
console.log(data) // function does not react.
let JSON_DATA = JSON.stringify(data)
console.log(JSON_DATA) // function does not react.
});
这是socket.io错误吗?
我应该做什么或如何研究这个问题
更新
devtools中的网络选项卡
对于两个base64映像:(函数工作成功)
对于四个base64映像:(函数不响应)
devtools中的“网络”选项卡是怎么说的?我觉得这不是套接字的合适用例。为什么不是HTTP?这个数组有多长,有多复杂?Wiktor,我将devtools结果添加到了我的问题列表中,因为这个项目必须在浏览器和electron项目中工作。实际上,服务器和客户端将在同一台计算机上。我知道用javascript无法从浏览器保存文件。这就是我选择socket.io的原因。我不能用它。