Zoeken…
Invoering
WebSocket is een protocol, dat tweerichtingscommunicatie mogelijk maakt tussen een client en een server:
Het doel van WebSocket is om een mechanisme te bieden voor browsergebaseerde applicaties die tweerichtingscommunicatie nodig hebben met servers die niet afhankelijk zijn van het openen van meerdere HTTP-verbindingen. ( RFC 6455 )
WebSocket werkt via HTTP-protocol.
Syntaxis
- nieuwe WebSocket (url)
- ws.binaryType / * aflevertype van ontvangen bericht: "arraybuffer" of "blob" * /
- ws.close ()
- ws.send (data)
- ws.onmessage = function (message) {/ * ... * /}
- ws.onopen = function () {/ * ... * /}
- ws.onerror = function () {/ * ... * /}
- ws.onclose = function () {/ * ... * /}
parameters
Parameter | Details |
---|---|
url | De server-URL die deze websocketverbinding ondersteunt. |
gegevens | De inhoud die naar de host moet worden verzonden. |
bericht | Het bericht ontvangen van de host. |
Breng een websocketverbinding tot stand
var wsHost = "ws://my-sites-url.com/path/to/web-socket-handler";
var ws = new WebSocket(wsHost);
Werken met stringberichten
var wsHost = "ws://my-sites-url.com/path/to/echo-web-socket-handler";
var ws = new WebSocket(wsHost);
var value = "an example message";
//onmessage : Event Listener - Triggered when we receive message form server
ws.onmessage = function(message) {
if (message === value) {
console.log("The echo host sent the correct message.");
} else {
console.log("Expected: " + value);
console.log("Received: " + message);
}
};
//onopen : Event Listener - event is triggered when websockets readyState changes to open which means now we are ready to send and receives messages from server
ws.onopen = function() {
//send is used to send the message to server
ws.send(value);
};
Werken met binaire berichten
var wsHost = "http://my-sites-url.com/path/to/echo-web-socket-handler";
var ws = new WebSocket(wsHost);
var buffer = new ArrayBuffer(5); // 5 byte buffer
var bufferView = new DataView(buffer);
bufferView.setFloat32(0, Math.PI);
bufferView.setUint8(4, 127);
ws.binaryType = 'arraybuffer';
ws.onmessage = function(message) {
var view = new DataView(message.data);
console.log('Uint8:', view.getUint8(4), 'Float32:', view.getFloat32(0))
};
ws.onopen = function() {
ws.send(buffer);
};
Een beveiligde websocketverbinding maken
var sck = "wss://site.com/wss-handler";
var wss = new WebSocket(sck);
Dit maakt gebruik van de wss
plaats van ws
om een beveiligde ws
te maken die gebruikmaakt van HTTPS in plaats van HTTP
Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow