Objet WebSocket
Processeur de conversion de protocole de paquets WebSocket
Il est utilisé pour convertir le protocole Http en message de protocole de paquet WebSocket. Méthode de création :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21var ws = require('ws');
var http = require('http');
var serv = new http.Server(8811, ws.upgrade((conn) => {
conn.onmessage = msg => {
conn.send(new Date());
};
}));
serv.run(r => 0);
var sock = new ws.Socket('ws://127.0.0.1:8811');
sock.on('open', () => {
setInterval(() => {
sock.send('get date');
}, 1000);
});
sock.onmessage = evt => {
console.log(evt.data);
}
Héritage
Constructeur
WebSocket
Constructeur WebSocket
1
2
3new WebSocket(String url,
String protocol = "",
String origin = "");
Paramètres d'appel :
- url: String, spécifiez le serveur connecté
- protocol: String, spécifiez le protocole de prise de contact, la valeur par défaut est ""
- origin: String, spécifiez la source à simuler lors de la prise de contact, la valeur par défaut est ""
Constructeur WebSocket
1
2new WebSocket(String url,
Object opts);
Paramètres d'appel :
- url: String, spécifiez le serveur connecté
- opts: Objet, option de connexion, la valeur par défaut est {}
opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :
1
2
3
4
5
6
7
8{
"protocol": "", // 指定握手协议,缺省为空
"origin": "", // 指定握手时模拟的源,缺省为空
"perMessageDeflate": false, // 指定是否支持压缩,缺省不支持
"maxPayload": 67108864, // 指定最大数据包尺寸,缺省为 67108864
"httpClient": hc, // 自定义 httpClient 对象,缺省使用全局 httpClient
"headers": // 指定 http(s) 连接时携带的 header,缺省为 {},
}
Propriétés statiques
defaultMaxListeners
Entier, le nombre maximal global par défaut d'auditeurs
1static Integer WebSocket.defaultMaxListeners;
Attributs des membres
url
String, interroge le serveur connecté à l'objet courant
1readonly String WebSocket.url;
protocol
String, interroge le protocole lorsque l'objet actuel est connecté
1readonly String WebSocket.protocol;
origin
String, interroge la source de la connexion d'objet actuelle
1readonly String WebSocket.origin;
readyState
Entier, interroge l'état de connexion de l'objet courant, voir ws
1readonly Integer WebSocket.readyState;
onopen
Événement de réussite de la fonction, de la requête et de la liaison, équivalent à on("open", func);
1Function WebSocket.onopen;
onmessage
Fonctionner, interroger et lier l'événement de réception du message de l'autre partie, équivalent à on("message", func);
1Function WebSocket.onmessage;
onclose
Fonction, requête et liaison de l'événement de fermeture de connexion, équivalent à on("close", func);
1Function WebSocket.onclose;
onerror
Événements d'erreur de fonction, de requête et de liaison, équivalents à on("error", func);
1Function WebSocket.onerror;
Fonction membre
close
Fermez la connexion actuelle, cette opération enverra un paquet CLOSE à l'autre partie et attendra que l'autre partie réponde
1
2WebSocket.close(Integer code = 1000,
String reason = "");
Paramètres d'appel :
- code: Entier, spécifiez le code à fermer, la valeur autorisée est 3000-4999 ou 1000, la valeur par défaut est 1000
- reason: chaîne, spécifiez la raison de la fermeture, la valeur par défaut est ""
send
Envoyer un SMS à l'autre partie
1WebSocket.send(String data);
Paramètres d'appel :
- data: String, spécifiez le texte envoyé
Envoyer une donnée binaire à l'autre partie
1WebSocket.send(Buffer data);
Paramètres d'appel :
- data: Buffer, Spécifiez les données binaires à envoyer
ref
Empêcher le processus fibjs de se terminer et empêcher le processus fibjs de se fermer pendant la liaison d'objet
1WebSocket WebSocket.ref();
Résultat de retour :
- WebSocket, Renvoie l'objet courant
unref
Autoriser la sortie du processus fibjs et autoriser la sortie du processus fibjs pendant la liaison d'objet
1WebSocket WebSocket.unref();
Résultat de retour :
- WebSocket, Renvoie l'objet courant
on
Lier un gestionnaire d'événements à l'objet
1
2Object WebSocket.on(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Lier un gestionnaire d'événements à l'objet
1Object WebSocket.on(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet sera utilisé comme nom d'événement et la valeur de propriété sera utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
addListener
Lier un gestionnaire d'événements à l'objet
1
2Object WebSocket.addListener(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Lier un gestionnaire d'événements à l'objet
1Object WebSocket.addListener(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet sera utilisé comme nom d'événement et la valeur de propriété sera utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
prependListener
Lier un gestionnaire d'événement au début de l'objet
1
2Object WebSocket.prependListener(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Lier un gestionnaire d'événement au début de l'objet
1Object WebSocket.prependListener(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet sera utilisé comme nom d'événement et la valeur de propriété sera utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
once
Liez une fonction de traitement d'événement unique à l'objet, la fonction de traitement unique ne sera déclenchée qu'une seule fois
1
2Object WebSocket.once(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Liez une fonction de traitement d'événement unique à l'objet, la fonction de traitement unique ne sera déclenchée qu'une seule fois
1Object WebSocket.once(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet sera utilisé comme nom d'événement et la valeur de propriété sera utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
prependOnceListener
Lier un gestionnaire d'événement au début de l'objet
1
2Object WebSocket.prependOnceListener(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Lier un gestionnaire d'événement au début de l'objet
1Object WebSocket.prependOnceListener(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet sera utilisé comme nom d'événement et la valeur de propriété sera utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
off
Annuler la fonction spécifiée de la file d'attente de traitement d'objet
1
2Object WebSocket.off(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Annuler toutes les fonctions dans la file d'attente de traitement des objets
1Object WebSocket.off(String ev);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Annuler la fonction spécifiée de la file d'attente de traitement d'objet
1Object WebSocket.off(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet est utilisé comme nom d'événement et la valeur de propriété est utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
removeListener
Annuler la fonction spécifiée de la file d'attente de traitement d'objet
1
2Object WebSocket.removeListener(String ev,
Function func);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
- func: fonction, spécifiez la fonction de traitement des événements
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Annuler toutes les fonctions dans la file d'attente de traitement des objets
1Object WebSocket.removeListener(String ev);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Annuler la fonction spécifiée de la file d'attente de traitement d'objet
1Object WebSocket.removeListener(Object map);
Paramètres d'appel :
- map: Objet, spécifiez la relation de mappage d'événement, le nom de propriété de l'objet est utilisé comme nom d'événement et la valeur de propriété est utilisée comme fonction de traitement d'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
removeAllListeners
Annule tous les écouteurs de tous les événements de la file d'attente de traitement des objets. Si un événement est spécifié, supprime tous les écouteurs de l'événement spécifié.
1Object WebSocket.removeAllListeners(String ev);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
Annule tous les écouteurs de tous les événements de la file d'attente de traitement des objets. Si un événement est spécifié, supprime tous les écouteurs de l'événement spécifié.
1Object WebSocket.removeAllListeners(Array evs = []);
Paramètres d'appel :
- evs: Array, spécifiez le nom de l'événement
Résultat de retour :
- Object, Renvoie l'objet événement lui-même, ce qui est pratique pour l'appel en chaîne
setMaxListeners
La limite par défaut du nombre d'auditeurs, uniquement pour la compatibilité
1WebSocket.setMaxListeners(Integer n);
Paramètres d'appel :
- n: Entier, spécifiez le nombre d'événements
getMaxListeners
Obtenez la limite par défaut du nombre d'auditeurs, uniquement pour la compatibilité
1Integer WebSocket.getMaxListeners();
Résultat de retour :
- Integer, Retour au nombre limite par défaut
listeners
Tableau d'écouteurs pour l'événement spécifié de l'objet de requête
1Array WebSocket.listeners(String ev);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
Résultat de retour :
- Array, Renvoie un tableau d'écouteurs pour l'événement spécifié
listenerCount
Le nombre d'écouteurs pour l'événement spécifié de l'objet de requête
1Integer WebSocket.listenerCount(String ev);
Paramètres d'appel :
- ev: String, spécifiez le nom de l'événement
Résultat de retour :
- Integer, Renvoie le nombre d'écouteurs pour l'événement spécifié
Le nombre d'écouteurs pour l'événement spécifié de l'objet de requête
1
2Integer WebSocket.listenerCount(Value o,
String ev);
Paramètres d'appel :
- o: Valeur, spécifiez l'objet de la requête
- ev: String, spécifiez le nom de l'événement
Résultat de retour :
- Integer, Renvoie le nombre d'écouteurs pour l'événement spécifié
eventNames
Interroger le nom d'événement de l'écouteur
1Array WebSocket.eventNames();
Résultat de retour :
- Array, Renvoie un tableau de noms d'événements
emit
Déclencher un événement activement
1
2Boolean WebSocket.emit(String ev,
...args);
Paramètres d'appel :
- ev: chaîne, nom de l'événement
- args: ..., paramètres d'événement, qui seront passés au gestionnaire d'événement
Résultat de retour :
- Boolean, Retourne à l'état du déclencheur d'événement, retourne vrai s'il y a un événement de réponse, sinon retourne faux
toString
Renvoie la représentation sous forme de chaîne de l'objet, renvoie généralement "[Objet natif]", l'objet peut être ré-implémenté selon ses propres caractéristiques
1String WebSocket.toString();
Résultat de retour :
- String, Renvoie la représentation sous forme de chaîne de l'objet
toJSON
Renvoie la représentation au format JSON de l'objet, renvoie généralement une collection d'attributs lisibles définis par l'objet
1Value WebSocket.toJSON(String key = "");
Paramètres d'appel :
- key: chaîne, inutilisé
Résultat de retour :
- Value, Renvoie une valeur contenant JSON sérialisable