【问题标题】:How to disable debug messages on sockjs- STOMP如何在 sockjs-STOMP 上禁用调试消息
【发布时间】:2014-10-30 05:43:40
【问题描述】:

我有以下情况:

 var options = {
        protocols_whitelist : [ "websocket", "xhr-streaming", "xdr-streaming", "xhr-polling", "xdr-polling", "iframe-htmlfile", "iframe-eventsource", "iframe-xhr-polling" ],
        debug : false
    };

    var socket = new SockJS("/mmyurl/",undefined,options);
    var stompClient = Stomp.over(socket);
    stompClient.connect({
        company : "XXXXX"
    }, function(frame) {
        stompClient.subscribe('/topic/mytopic', function(message){ 
            var myitem = JSON.parse(message.body);

        });

一切正常,问题是javascript控制台上充满了这样的调试消息:

<<< MESSAGE
content-type:application/json;charset=UTF-8
subscription:sub-1
message-id:o6g660dt-113
destination:/topic/mytopic
content-length:411

我想禁用这些消息。

我尝试更改一些选项并尝试简单地注册:

var socket = new SockJS("/mmyurl/");

但它不起作用。

有没有办法禁用调试消息?

感谢任何帮助

【问题讨论】:

    标签: javascript websocket socks stomp


    【解决方案1】:

    好的,我找到了解决方案。

    我添加了这段代码:

    stompClient.debug = null
    

    这样,调试功能就被禁用了。

    【讨论】:

    • 对于其他来到这里的人,文档 (jmesnil.net/stomp-websocket/doc) 声明您可以将 client.debug 设置为任何函数,并且该函数随每条消息一起运行。因此,除了能够将 debug 设置为 null 之外,您还可以将其更改为任何函数来管理您自己的调试(通过 GET 变量或任何您想要的变量进行设置)
    • 应该设置成什么都不做的函数。当前的 StompJS 版本不检查是否设置了调试,它只会尝试执行它。设置debug为null时会报错。
    【解决方案2】:

    我尝试了 JR 的回答,但开始收到错误(正在使用 redux sagas) - 将调试更改为空函数有效...

    stompClient.debug = () => {};
    

    【讨论】:

    • stompClient.debug = f =&gt; f;(我觉得这更容易输入)
    猜你喜欢
    • 2011-07-15
    • 2015-06-23
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    • 2012-09-17
    相关资源
    最近更新 更多