Objecte objecte incorporat

ObjectWebSocket

WebSocket és un protocol de comunicació full-duplex basat en el protocol TCP que estableix una connexió ininterrompuda entre el navegador i el servidor, pot realitzar una transmissió de dades bidireccional en temps real i pot suportar la transmissió de dades en qualsevol format. En fibjs, el mòdul de suport de WebSocket proporciona la interfície API corresponent, que pot realitzar el desenvolupament del servidor i client WebSocket.

El mòdul de suport de WebSocket és només una implementació del protocol WebSocket i ha de funcionar a la part superior del protocol HTTP. Al costat del servidor, la sol·licitud HTTP es pot convertir en una connexió WebSocket mitjançant la funció d'actualització, mentre que al costat del client, l'adreça del servidor que s'ha de connectar s'ha d'especificar mitjançant l'URL del protocol WebSocket.

Exemple d'inici d'un servidor WebSocket:

1 2 3 4 5 6 7 8 9 10 11
var ws = require('ws'); var http = require('http'); var svr = new http.Server(80, { '/ws': ws.upgrade(conn => { conn.onmessage = e => { conn.send('fibjs:' + e.data); }; }) }); svr.start();

Exemple d'establiment d'una connexió amb el servidor anterior al client:

1 2 3 4 5 6 7 8 9 10 11 12
var ws = require("ws"); var conn = new ws.Socket("ws://127.0.0.1/ws"); // emit open event conn.onopen = () => { console.log("websocket connected"); conn.send("hi"); }; // emit close event conn.onmessage = evt => { console.log("websocket receive: " + evt.data); };

relació hereditària

Constructor

WebSocket

Constructor WebSocket

1 2 3
new WebSocket(String url, String protocol = "", String origin = "");

Paràmetres de trucada:

  • url: Cadena, especifica el servidor connectat
  • protocol: Cadena, especifica el protocol de connexió de mans, el valor per defecte és ""
  • origin: Cadena, especifica l'origen de la simulació durant l'encaixada, el valor predeterminat és ""

Constructor WebSocket

1 2
new WebSocket(String url, Object opts);

Paràmetres de trucada:

  • url: Cadena, especifica el servidor connectat
  • opts: Objecte, opció de connexió, per defecte és {}

opts conté opcions addicionals per a la sol·licitud, compatibles de la següent manera:

1 2 3 4 5 6 7 8
{ "protocol": "", // specify the sub-protocol, default is "" "origin": "", // specify the origin, default is "" "perMessageDeflate": false, // specify whether to enable permessage-deflate, default is false "maxPayload": 67108864, // specify the max payload size, default is 64MB "httpClient": hc, // specify the http client, default is null, use the global http client "headers": // specify the http headers, default is {} }

propietats estàtiques

defaultMaxListeners

Enter, el nombre màxim global predeterminat d'oients

1
static Integer WebSocket.defaultMaxListeners;

propietats dels membres

url

String, consulta el servidor al qual està connectat l'objecte actual

1
readonly String WebSocket.url;

protocol

String, consulta el protocol de connexió de l'objecte actual

1
readonly String WebSocket.protocol;

origin

Cadena, consulta l'origen de la connexió de l'objecte actual

1
readonly String WebSocket.origin;

readyState

Enter, consulteu l'estat de connexió de l'objecte actual, vegeuws

1
readonly Integer WebSocket.readyState;

onopen

Esdeveniments d'èxit de connexió de funció, consulta i vinculació, equivalent a on("open", func);

1
Function WebSocket.onopen;

onmessage

Esdeveniments de funció, consulta i vinculació que reben missatges de l'altra part, equivalent a on("missatge", func);

1
Function WebSocket.onmessage;

onclose

Funció, consultes i enllaços esdeveniments de tancament de connexió, equivalent a on("tancar", func);

1
Function WebSocket.onclose;

onerror

Esdeveniments de funció, consulta i vinculació quan es produeixen errors, equivalent a on("error", func);

1
Function WebSocket.onerror;

funció de membre

close

Tanca la connexió actual. Aquesta operació enviarà un paquet CLOSE a l'altra part i esperarà que l'altra part respongui.

1 2
WebSocket.close(Integer code = 1000, String reason = "");

Paràmetres de trucada:

  • code: Enter, especifica el codi d'apagada, el valor permès és 3000-4999 o 1000, el valor predeterminat és 1000
  • reason: Cadena, especifica el motiu de l'aturada, el valor predeterminat és ""

send

Envia un missatge de text a l'altra part

1
WebSocket.send(String data);

Paràmetres de trucada:

  • data: Cadena, especifica el text a enviar

Envieu un tros de dades binàries a l'altra part

1
WebSocket.send(Buffer data);

Paràmetres de trucada:

  • data:Buffer, especifiqueu les dades binàries enviades

ref

Eviteu que el procés fibjs surti i eviteu que el procés fibjs surti durant l'enllaç d'objectes

1
WebSocket WebSocket.ref();

Resultats de retorn:

  • WebSocket, retorna l'objecte actual

unref

Permet que el procés fibjs surti. Permet que el procés fibjs surti durant l'enllaç d'objectes.

1
WebSocket WebSocket.unref();

Resultats de retorn:

  • WebSocket, retorna l'objecte actual

on

Enllaceu un controlador d'esdeveniments a l'objecte

1 2
Object WebSocket.on(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'objecte

1
Object WebSocket.on(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

addListener

Enllaceu un controlador d'esdeveniments a l'objecte

1 2
Object WebSocket.addListener(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'objecte

1
Object WebSocket.addListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

prependListener

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1 2
Object WebSocket.prependListener(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1
Object WebSocket.prependListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

once

Enllaça un controlador d'esdeveniments únic a l'objecte. El controlador únic només s'activarà una vegada.

1 2
Object WebSocket.once(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaça un controlador d'esdeveniments únic a l'objecte. El controlador únic només s'activarà una vegada.

1
Object WebSocket.once(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

prependOnceListener

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1 2
Object WebSocket.prependOnceListener(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1
Object WebSocket.prependOnceListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

off

Desassignar una funció de la cua de processament d'objectes

1 2
Object WebSocket.off(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la totes les funcions de la cua de processament d'objectes

1
Object WebSocket.off(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Desassignar una funció de la cua de processament d'objectes

1
Object WebSocket.off(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitza com a nom de l'esdeveniment i el valor de l'atribut s'utilitza com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

removeListener

Desassignar una funció de la cua de processament d'objectes

1 2
Object WebSocket.removeListener(String ev, Function func);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la totes les funcions de la cua de processament d'objectes

1
Object WebSocket.removeListener(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Desassignar una funció de la cua de processament d'objectes

1
Object WebSocket.removeListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitza com a nom de l'esdeveniment i el valor de l'atribut s'utilitza com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

removeAllListeners

Cancel·la tots els oients de tots els esdeveniments de la cua de processament de l'objecte. Si s'especifica un esdeveniment, elimina tots els oients de l'esdeveniment especificat.

1
Object WebSocket.removeAllListeners(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la tots els oients de tots els esdeveniments de la cua de processament de l'objecte. Si s'especifica un esdeveniment, elimina tots els oients de l'esdeveniment especificat.

1
Object WebSocket.removeAllListeners(Array evs = []);

Paràmetres de trucada:

  • evs: Matriu, especifiqueu el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

setMaxListeners

El límit predeterminat del nombre d'oients, només per compatibilitat

1
WebSocket.setMaxListeners(Integer n);

Paràmetres de trucada:

  • n: Enter, especifiqueu el nombre d'esdeveniments

getMaxListeners

Obté el nombre límit predeterminat d'oients, només per compatibilitat

1
Integer WebSocket.getMaxListeners();

Resultats de retorn:

  • Integer, retorna la quantitat límit predeterminada

listeners

Consulteu la matriu d'escolta per a l'esdeveniment especificat de l'objecte

1
Array WebSocket.listeners(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Array, retorna la matriu d'escolta per a l'esdeveniment especificat

listenerCount

Consulteu el nombre d'oients per a l'esdeveniment especificat de l'objecte

1
Integer WebSocket.listenerCount(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Integer, retorna el nombre d'oients per a l'esdeveniment especificat

Consulteu el nombre d'oients per a l'esdeveniment especificat de l'objecte

1 2
Integer WebSocket.listenerCount(Value o, String ev);

Paràmetres de trucada:

  • o: Valor, especifica l'objecte de la consulta
  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Integer, retorna el nombre d'oients per a l'esdeveniment especificat

eventNames

Consulta el nom de l'esdeveniment de l'oient

1
Array WebSocket.eventNames();

Resultats de retorn:

  • Array, retorna una matriu de noms d'esdeveniments

emit

Activa activament un esdeveniment

1 2
Boolean WebSocket.emit(String ev, ...args);

Paràmetres de trucada:

  • ev: cadena, nom de l'esdeveniment
  • args: ..., els paràmetres d'esdeveniment es passaran a la funció de processament d'esdeveniments

Resultats de retorn:

  • Boolean, retorna l'estat de l'activador de l'esdeveniment, retorna true si hi ha un esdeveniment de resposta, en cas contrari retorna false

toString

Retorna la representació de cadena de l'objecte. En general, es retorna "[Objecte natiu]". L'objecte es pot tornar a implementar segons les seves pròpies característiques.

1
String WebSocket.toString();

Resultats de retorn:

  • String, retorna la representació de cadena de l'objecte

toJSON

Retorna una representació en format JSON de l'objecte, generalment retornant una col·lecció de propietats llegibles definides per l'objecte.

1
Value WebSocket.toJSON(String key = "");

Paràmetres de trucada:

  • key: Corda, no utilitzada

Resultats de retorn:

  • Value, retorna un valor que conté JSON serializable