WebSockets

Table of contents

      1. 1.1.1. Documentation
      2. 1.1.2. Tools
      3. 1.1.3. Related Topics
  1. 2. See also
  2. 3. Browser compatibility
    1. 3.1. Gecko notes
      1. 3.1.1. Gecko 6.0
      2. 3.1.2. Gecko 7.0
      3. 3.1.3. Gecko 8.0
      4. 3.1.4. Gecko 11.0
Table of contents
      1. 1.1.1. Documentation
      2. 1.1.2. Tools
      3. 1.1.3. Related Topics
  1. 2. See also
  2. 3. Browser compatibility
    1. 3.1. Gecko notes
      1. 3.1.1. Gecko 6.0
      2. 3.1.2. Gecko 7.0
      3. 3.1.3. Gecko 8.0
      4. 3.1.4. Gecko 11.0

This is an experimental feature
Because this feature is still in development in some browsers, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental feature is subject to change in future version of browsers as the spec changes.

WebSockets is a technology that makes it possible to open an interactive communication session between the user's browser and a server. With this API, you can send messages to a server and receive event-driven responses without having to poll the server for a reply.

Documentation

Writing WebSocket client applications
A tutorial guide to writing WebSocket clients to run in the browser.
WebSockets reference
A reference to the client-side WebSocket API.
(TBD) The WebSocket protocol
A reference to the WebSocket protocol.
(TBD) Writing WebSocket servers
A guide to writing server-side code to handle the WebSocket protocol.

View All...

Tools

 

Related Topics

AJAXJavaScript

Browser compatibility

  • Desktop
  • Mobile

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Version -76 support Obsolete 6 4.0 (2.0) -- 11.00 (disabled) 5.0.1
Protocol version 7 support -- 6.0 (6.0)
Moz
-- -- --
Protocol version 10 support 14 7.0 (7.0)
Moz
HTML5 Labs ? ?
RFC 6455 Support (IETF Draft 17) 16 11.0 (11.0) 10 ? ?
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Version -76 support Obsolete ? ? ? ? ?
Protocol version 7 support ? ? ? ? ?
Protocol version 8 support (IETF draft 10) ? 7.0 (7.0) ? ? ?
RFC 6455 Support (IETF Draft 17) 16 11.0 (11.0) ? ? ?

Gecko notes

WebSockets support in Firefox is continuing to track the evolving WebSocket specification. Firefox 6 implements version 7 of the underlying protocol, while Firefox 7 implements version 8 (as specified by IETF draft 10). Firefox mobile received WebSocket support in Firefox mobile 7.0.

Gecko 6.0

Prior to Gecko 6.0 (Firefox 6.0 / Thunderbird 6.0 / SeaMonkey 2.3) , there was, incorrectly, a WebSocket object that some sites were thinking implied that WebSocket services were not prefixed; this object has been renamed to MozWebSocket.

Gecko 7.0

Starting in Gecko 7.0 (Firefox 7.0 / Thunderbird 7.0 / SeaMonkey 2.4) , the network.websocket.max-connections preference is used to determine the maximum number of WebSocket connections that can be open at a time. The default value is 200.

Gecko 8.0

Starting in Gecko 8.0 (Firefox 8.0 / Thunderbird 8.0 / SeaMonkey 2.5) , the deflate-stream extension to the WebSocket protocol has been disabled, since it's been deprecated from the specification drafts. This resolves incompatibilities with some sites.

Gecko 11.0

Prior to Gecko 11.0, both incoming and outgoing messages were limited to 16 MB in size. They may now be up to 2 GB in size. Note, however, that memory limitations (especially on mobile devices) make that a theoretical maximum, not a practical one. In reality, transfers of that size will fail on devices that don't have enough memory.

Additionally, ArrayBuffer send and receive support for binary data has been implemented.

Starting in Gecko 11.0, the WebSocket API is no longer prefixed.

Warning: Among other things, a key reason WebSockets was disabled by default in Firefox 4 and 5 is the discovery of a security issue in the protocol's design. Using WebSockets in those versions of Firefox in a production environment is not recommended at this time. If you still wish to experiment with WebSockets, you may do so by opening about:config and setting the network.websocket.enabled preference to true. You will also need to set the network.websocket.override-security-block preference to true in order to allow initializing a WebSocket connection.

 

HTML5 Documentation
HTMLAudio/Video Canvas WebGL SVG MathML WebForms AppCache Microformats SemanticTags
JavascriptStorage IndexedDB WebSockets WebWorkers Events Drag/Drop ProtocolHandler Geolocation Focus
CSSNewSelectors Typography Visual Effects

Tags (2)

Edit tags

Attachments (0)

 

Attach file