【问题标题】:Node.js+socket.io “RangeError: maximum call stack size exceeded”Node.js+socket.io “RangeError: 超出最大调用栈大小”
【发布时间】:2015-08-09 00:38:21
【问题描述】:

在处理完我的整个 html 文档后,我正在使用 socket.io 事件将我的 html 整个 html 文档发送到 nodejs 服务器。但我收到“RangeError:超出最大调用堆栈大小”。

我尝试将一些小的 html 内容发送到我的 nodejs 服务器,并且发送非常顺利,但是当我发送整个 html 文档时,我收到了这个错误。

一切正常:

 app.socket.emit('allSectionsData',{
                                    data:'<!DOCTYPE html><html><body><svg height="60" width="200">' +
                                    '<text x="0" y="15" fill="red" transform="rotate(30 20,40)">I love SVG</text>'+
                                'Sorry, your browser does not support inline SVG.</svg></body></html>'
                                });

但是,当我使用这个发送我的整个文档时

var all_route_content=document.getElementById('All_outlet');

                            //setTimeout( function() {
                                app.socket.emit('allSectionsData',{
                                    data:all_route_content
                                });
                           //});

【问题讨论】:

    标签: node.js socket.io


    【解决方案1】:

    试试这个:

    var all_route_content=document.getElementById('All_outlet').innerHTML;
    

    您正在使用 document.getElementById('All_outlet') 发送完整的 DOM 对象

    【讨论】:

    • 我做了并且得到了输出但不正确。实际上会发生什么......它只占用我所有内部div的外部内容。不是全部
    猜你喜欢
    • 1970-01-01
    • 2012-05-27
    • 2015-02-07
    • 2014-12-03
    • 1970-01-01
    • 2018-07-29
    • 2018-02-06
    相关资源
    最近更新 更多