137 votes

html5 Websocket avec SSL

Est-il possible d'avoir les WebSockets avec https? Lors de la commutation de https, mon WebSocket renvoie une erreur de sécurité et fonctionne parfaitement avec http...

socket = new WebSocket("ws://my_www:1235"); 

Merci

212voto

Peter Moskovits Points 1387

La connexion WebSocket commence sa vie avec une adresse HTTP ou HTTPS poignée de main. Lorsque la page est accessible via HTTP, vous pouvez utiliser WS ou WSS (WebSocket sécurisé: WS sur TLS) . Toutefois, lorsque votre page est chargée par HTTPS, vous pouvez uniquement utiliser WSS - navigateurs ne permettent pas de "downgrade" de sécurité.

51voto

kanaka Points 23143

Vous ne pouvez pas utiliser les WebSockets sur HTTPS, mais vous pouvez utiliser les WebSockets sur TLS (HTTPS est HTTP sur TLS). Suffit d'utiliser "wss://" dans l'URI.

Je crois que les versions récentes de Firefox ne vous laisseront pas de les utiliser non-TLS WebSockets à partir d'une page HTTPS, mais l'inverse ne devrait pas être un problème.

27voto

oberstet Points 7409

1 inconvénient supplémentaire (en plus de la réponse par kanaka/pierre): si vous utilisez WSS, et le certificat du serveur n'est pas acceptable pour le navigateur, vous ne pouvez pas obtenir n'importe quel navigateur rendu de dialogue (comme il arrive pour les pages Web). C'est parce que les WebSockets est traité comme un soi-disant "sous-ressource", et le certificat d'acceptation ou de l'exception de sécurité / quel que soit les dialogues ne sont pas rendus pour les sous-ressources.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X