--- title: CloseEvent slug: Web/API/CloseEvent tags: - API - Interface - Reference - Web - WebSocket translation_of: Web/API/CloseEvent ---

{{APIRef("Websockets API")}}

Un événement CloseEvent est envoyé au client utilisant une WebSocket lorsque la connexion est fermée. Cet événement est envoyé au listener indiqué par l'attribut onclose de la WebSocket.

Constructeur

{{domxref("CloseEvent.CloseEvent", "CloseEvent()")}}
Construit un nouvel événement CloseEvent.

Propriétés

Cette interface hérite également des propriétés de sa mère, {{domxref("Event")}}.

{{domxref("CloseEvent.code")}} {{readOnlyInline}}
Retourne un unsigned short contenant le code de fermeture envoyé par le serveur. Les valeurs possibles sont données ci-dessous.
Status code Nom Description
0999   Reservé et inutilisé.
1000 CLOSE_NORMAL Fermeture normale ; la connexion s'est terminée normalement.
1001 CLOSE_GOING_AWAY

Reçu lorsque une erreur est apparue sur le serveur ou le navigateur quitte la page ayant ouvert la connexion.

1002 CLOSE_PROTOCOL_ERROR L'autre partie de la connexion terminte la connexion à cause d'une erreur de protocole.
1003 CLOSE_UNSUPPORTED La connexion est terminée car le serveur à reçu des données d'un type qu'il ne peut pas accepter (par exemple des données binaire plutôt que du texte).
1004   Réservé. Une utilisation pourrait être définie dans le futur.
1005 CLOSE_NO_STATUS Réservé. Indique qu'aucun code n'est donné bien qu'un code était attendu.
1006 CLOSE_ABNORMAL Réservé. Utilisé pour indiquer que la connexion a été terminée anormalement (sans paquet indiquant la fermeture).
1007   Le serveur termine la connexion car un message contenant des données incohérentes a été reçu (e.g., des données qui ne sont pas au format UTF-8 dans un message texte).
1008   Le serveur termine la connexion car un message ne respectant pas la politique du serveur est reçu. C'est un code d'état générique qui est utilisé lorsque les codes 1003 et 1009 ne correspondent pas à la situation.
1009 CLOSE_TOO_LARGE Le serveur termine la connexion car les données reçues sont trop grosses.
1010   Le client termine la connexion car il souhaitait négocier une ou plusieurs extensions mais le serveur ne l'a pas fait.
1011   Le serveur termine la connexion car il a rencontré un problème qui l'empêche de traiter la requête.
1014   Réservé pour une utilisation future par le standard WebSocket.
1015   Réservé. Indique que la connexion a été fermée à cause d'une erreur durant le handshake TLS (e.g., le certificat du serveur ne peut pas être vérifié).
10161999   Réservé pour une utilisation future par le standard WebSocket.
20002999   Réservé pour une utilisation future par le standard WebSocket.
30003999   Disponible pour être utilisé par des bibliothèques ou des frameworks. Ces codes ne doivent pas être utilisés par des applications.
40004999   Disponible pour être utilisés par des applications.
{{domxref("CloseEvent.reason")}} {{readOnlyInline}}
Retourne un {{ domxref("DOMString") }} qui indique la raison pour laquelle le serveur a fermé la connexion. Ce message est spécifique au serveur et au sous-protocole utilisé.
{{domxref("CloseEvent.wasClean")}} {{readOnlyInline}}
Retourne un {{jsxref("Boolean")}} qui indique si la connexion a été correctement fermée ou non.

Méthodes

Cette interface hérite également des propriétés de sa mère, {{domxref("Event")}}.

{{domxref("CloseEvent.initCloseEvent()")}} {{Non-standard_inline}} {{Obsolete_inline}}
Initialise la valeur d'un CloseEvent. Si l'événement a déjà été envoyé, cette méthode ne fait rien.

Compatibilité des navigateurs

{{ CompatibilityTable() }}

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support de base {{ CompatUnknown() }} {{ CompatGeckoDesktop("8.0") }} [1][2] {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
initCloseEvent() {{Non-standard_inline}} {{CompatNo}} {{ CompatGeckoDesktop("8.0") }}
Removed in {{CompatGeckoDesktop("41") }}
{{CompatNo}} {{CompatNo}} {{CompatNo}}
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support de base {{ CompatUnknown() }} {{ CompatGeckoMobile("8.0") }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
initCloseEvent() {{Non-standard_inline}} {{CompatNo}} {{ CompatGeckoMobile("8.0") }}
Removed in {{CompatGeckoMobile("41") }}
{{CompatNo}} {{CompatNo}} {{CompatNo}}

[1] Avant Gecko 8.0 {{ geckoRelease("8.0") }}, Gecko envoyait l'événement {{event("close")}} des WebSocket au listener en tant que simple événement. Le support de l'événement CloseEvent a été implémenté dans Gecko 8.0.

[2] Avant Gecko 12.0 {{ geckoRelease("12.0") }}, Gecko envoyait le code de fermeture CLOSE_NORMAL quand la connexion était fermée à cause d'une erreur inconnue, ou si elle était fermée à cause d'une erreur que la spécification ne couvre pas. Maintenant, CLOSE_GOING_AWAY est envoyé à la place.

Voir aussi