title: Why do I receive 'message too big' on .publish() [error 1009]?
body: <p>I'm able to establish a firm connection over <code>rosbridge_server</code> with <code>roslibjs</code>, however, whenever I call <code>.publish()</code> the Websocket disconnects and returns</p>
  
  <p>I've tried calling JSON.stringify() to shorten the message size.
  I've ensure the message is of the right format.</p>
  
  <pre><code>&lt;script type="text/javascript" src="http://static.robotwebtools.org/EventEmitter2/current/eventemitter2.min.js"&gt;&lt;/script&gt;
  &lt;script type="text/javascript" src="http://static.robotwebtools.org/roslibjs/current/roslib.min.js"&gt;&lt;/script&gt;
  var ros = new ROSLIB.Ros({ 
      url : 'ws://192.168.1.122:9090'
    });
  var rosbridge_obj = new ROSLIB.Topic({
      ros : ros,
      name : '/topicname',
      messageType : 'topicname/messagetype'
    });
   var message_obj = new ROSLIB.Message({
      header : {
        seq : 0,
        stamp : 8768,
        frame_id : 'Redacted',
      },
      mobility : {
        ForwardY : 0,
        TurningX : 0,
      },
      arm : {
        J1 : 0,
        J2 : 0,
        J3 : 0,
        J4 : 0,
        J51 : 0,
        J52 : 0,
      },
      mode : {
        mode : 0,
      },
    });
  rosbridge_obj.publish(message_obj);
  </code></pre>
  
  <p>Expected result is that the Websocket will publish and not close however I receive the following:</p>
  
  <pre><code>CloseEvent
  bubbles: false
  code: 1009
  composed: false
   currentTarget: WebSocket {url: "ws://192.168.1.122:9090/", readyState: 3, bufferedAmount: 0, onopen: ƒ, onerror: ƒ, …}
  defaultPrevented: false
  eventPhase: 0
  isTrusted: true
  path: []
  reason: "message too big"
  returnValue: true
  </code></pre>