aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/websockets_api/index.html
blob: 7ba0b6b22bc187e71b3d82fd61ea0e84134d9664 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
---
title: WebSockets
slug: Web/API/WebSockets_API
tags:
  - API
  - Aperçu
  - Bidirectionnel
  - Client
  - Communication
  - Serveur
  - WebSocket
  - WebSocket API
  - WebSockets
  - data
  - interactive
translation_of: Web/API/WebSockets_API
---
<p>{{DefaultAPISidebar("Websockets API")}}</p>

<p>L'<strong>API WebSocket</strong> est une technologie évoluée qui permet d'ouvrir un canal de communication bidirectionnelle entre un navigateur (côté client) et un serveur. Avec cette API vous pouvez envoyer des messages à un serveur et recevoir ses réponses de manière événementielle sans avoir à aller consulter le serveur pour obtenir une réponse.</p>

<div class="blockIndicator note">
<p><strong>Note: </strong> Bien que les connexions WebSocket soient fonctionnellement similaires aux sockets standard de type Unix, elles ne sont pas liées.</p>
</div>

<h2 id="Interfaces">Interfaces  </h2>

<dl>
 <dt><code><a href="/fr/docs/WebSockets/Writing_WebSocket_client_applications" title="WebSockets/Writing WebSocket client applications">WebSocket</a></code></dt>
 <dd>Interface principale pour se connecter à un serveur WebSocket. Il permet d'envoyer et de recevoir des données sur la connexion.</dd>
 <dt><code><a href="/fr/docs/Web/API/CloseEvent">CloseEvent</a></code></dt>
 <dd>Evénement envoyé par l'objet WebSocket lors de la fermeture de la connexion.</dd>
 <dt><code><a href="/fr/docs/Web/API/MessageEvent">MessageEvent</a></code></dt>
 <dd>Evénement envoyé par l'objet WebSocket lorsqu'un message est reçu par le serveur.</dd>
</dl>

<h2 id="Guides">Guides</h2>

<ul>
 <li><a href="/fr/docs/Web/API/WebSockets_API/Writing_WebSocket_client_applications">Ecrire des applications client WebSocket </a></li>
 <li><a href="/fr/docs/Web/API/WebSockets_API/Writing_WebSocket_servers">Écriture de serveurs WebSocket </a></li>
 <li><a href="/fr/docs/Web/API/WebSockets_API/Writing_WebSocket_server">Écrire un serveur WebSocket en C#</a></li>
 <li><a href="/fr/docs/Web/API/WebSockets_API/Writing_a_WebSocket_server_in_Java">Écrire un serveur WebSocket en Java </a></li>
</ul>

<h2 id="Outils">Outils</h2>

<div class="cleared row topicpage-table">
<ul>
 <li> <a href="https://humblenet.github.io/">HumbleNet</a><span> :Bibliothèque de réseau multiplateforme qui fonctionne dans un navigateur. Il s'agit bibliothèque écrite en C qui enveloppe WebSockets et WebRTC. Elle gomme toutes les différences qui existent entre les navigateurs et les logiciels, ce qui facilite la création d'une fonctionnalité de réseau multi-joueurs pour les jeux, par exemple,  et autres applications.</span></li>
 <li><a href="https://github.com/uWebSockets/uWebSockets">µWebSockets</a>: Déclinaison plus légère et plus performante de WebSocket et écrite en <a href="https://isocpp.org/">C++11</a> et en <a href="https://nodejs.org/fr/">Node.js</a>.</li>
 <li><a href="https://github.com/ClusterWS/ClusterWS">ClusteWS</a>: Framework léger, rapide et puissant qui permet de construire des application en <a href="https://nodejs.org/fr/">Node.js</a>.</li>
 <li><a class="external" href="http://socket.io" title="http://socket.io/">Socket.IO</a>: API WebSocket puissante et multiplateformes en <a class="external" href="http://nodejs.org" title="http://nodejs.org/">Node.js</a>.</li>
 <li><a href="https://socketcluster.io/#!/">SocketCluster</a>: Framework open source en temps réel en <a class="external" href="http://nodejs.org" title="http://nodejs.org/">Node.js</a>. Il prend en charge à la fois la communication directe client-serveur et la communication de groupe via les pub/sub canaux. Il est conçu pour s'adapter facilement à n'importe quel nombre de processus/hôtes et est idéal pour construire de chat de discution.</li>
 <li><a class="link-https" href="https://github.com/Worlize/WebSocket-Node" title="https://github.com/Worlize/WebSocket-Node">WebSocket-Node</a>: API WebSocket coté serveur en <a class="external" href="http://nodejs.org" title="http://nodejs.org/">Node.js</a>.</li>
 <li><a href="https://www.totaljs.com/">Total.js</a>: FrameWork pour web application en <a class="external" href="http://nodejs.org" title="http://nodejs.org/">Node.js</a>.</li>
 <li><a href="https://www.npmjs.com/package/faye-websocket">Faye</a>: Combine WebSocket(bidirectionnelle) et EventSource(unidirectionnelle) , côté serveur et côté client en <a class="external" href="http://nodejs.org" title="http://nodejs.org/">Node.js</a>.</li>
 <li><a href="http://signalr.net/">SignalR</a>: SignalR est une nouvelle bibliothèque pour les développeurs <a href="https://dotnet.microsoft.com/apps/aspnet">ASP.NET</a>. Elle simplifie l'ajout des WebSockets dans les applications. SignalR utilise les canaux  de WebSockets lorsqu'elles sont disponibles,  dans le cas contraire elle utilise d'autres technos, sans modifier votre application.</li>
 <li><a href="https://caddyserver.com/docs/websocket">Caddy</a>: Serveur web capable de créer des WebSockets serveur/proxy(stdin/stdout, echo, cat, ...).</li>
 <li><a href="https://github.com/websockets/ws">ws</a>: La plus populaire des WebSockets pour client &amp; serveur en <a class="external" href="http://nodejs.org" title="http://nodejs.org/">Node.js</a>.</li>
 <li><a href="https://github.com/bigstepinc/jsonrpc-bidirectional">jsonrpc-bidirectional</a>: Asynchronous RPC which, on a single connection, may have functions exported on the server and, and the same time, on the client (client may call server, server may also call client).</li>
 <li><a href="https://github.com/ninenines/cowboy">cowboy</a>: Cowboy est un petit serveur HTTP rapide et moderne pour Erlang/OTP basé sur WebSocket.</li>
</ul>
</div>

<h2 id="Ressources_liées">Ressources liées</h2>

<ul>
 <li><a href="/fr/docs/AJAX" title="AJAX">AJAX</a></li>
 <li><a href="/fr/docs/Web/JavaScript" title="JavaScript">JavaScript</a></li>
</ul>

<h2 id="Spécifications">Spécifications</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">Spécification</th>
   <th scope="col">Statut</th>
   <th scope="col">Commentaires</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName("HTML WHATWG", "web-sockets.html", "WebSocket API")}}</td>
   <td>{{Spec2("HTML WHATWG")}}</td>
   <td></td>
  </tr>
  <tr>
   <td><a href="https://www.w3.org/TR/websockets/">WebSockets</a></td>
   <td>
    <p><span class="spec-CR">Candidat au statut de Recommendation</span></p>
   </td>
   <td></td>
  </tr>
  <tr>
   <td>{{RFC(6455, "The WebSocket Protocol")}}</td>
   <td><span class="spec-RFC">IETF RFC</span></td>
   <td></td>
  </tr>
 </tbody>
</table>

<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>



<p>{{Compat("api.WebSocket")}}</p>

<h2 id="Voir_aussi">Voir aussi</h2>

<ul>
 <li><a class="external" href="http://tools.ietf.org/html/rfc6455">RFC 6455 - Le protocole WebSocket</a></li>
 <li><a class="external" href="http://www.w3.org/TR/websockets/">Les spécifications de l'API WebSocket</a></li>
 <li><a href="/fr/docs/Web/API/Server-sent_events" title="Server-sent_events">Server-Sent Events</a></li>
</ul>