HTML5 et Web Sockets

Web Sockets sont un des ajouts les plus techniquement avancés à HTML5, et ils ont aussi le potentiel pour obtenir le changement le plus spectaculaire au travail moyen de l'Internet est fait.

Bien avant que le Web que nous connaissons, les programmeurs ont utilisé une idée appelée Prises pour permettre aux ordinateurs distants de communiquer avec une connexion persistante. Si vous avez déjà utilisé un client Telnet, FTP ou SSH, vous avez utilisé un programme qui utilise des sockets. Typiquement, le programmeur construit deux types de prises: Celui qui vit sur le serveur (un - attendre qu'il - socket serveur) Et celui qui vit sur le client (vous l'aurez deviné - un socket client.) Ces deux programmes communiquent par un accord de communication stylisé prédéterminé, appelé protocole de communication. En fait, Telnet, FTP, HTTP, et de nombreux autres outils Internet sont vraiment plus que les protocoles logiciels. Un programme de Telnet est en fait un client de douille polyvalente et peut être utilisée pour tester différents types de sockets serveur. Le serveur Web lui-même est un serveur spécialisé qui parle principalement le protocole HTTP et le navigateur Web est un client spécialisé qui parle HTTP.

Vous pouvez utiliser un outil de prise comme Telnet pour vous connecter à un serveur HTTP. Pour tester cela, exécutez le code suivant à partir de la ligne de commande. (Il devrait fonctionner de la même sur toutes les plateformes majeures: Ils ont tous un programme de Telnet de base intégré.)

telnet aharrisbooks.net 80

Vous avez connecté au serveur en utilisant le port 80 (le port du serveur Web standard). Vous verrez une réponse qui ressemble à ce qui suit. (Les caractères gras indiquent que cela vient de le serveur.)




Essayer 66.40.52.176 ...Connecté à aharrisbooks.net.Caractère d'échappement est '^]'.

Maintenant, le serveur pense que vous êtes un navigateur. Pour obtenir une page en particulier, vous devez envoyer la même demande le navigateur enverrait. Pour obtenir l'indice pour javascript et AJAX For Dummies par Andy Harris, utilisez cette demande:

GET /jad/index.html HTTP / 1.1host: aharrisbooks.net

Appuyez sur la touche Entrée deux fois après la dernière ligne pour soumettre la demande. Vous verrez une longue chaîne de code HTML - tout le code qui compose la page. Bien sûr, vous verrez que le code parce que ce ne sont pas un vrai navigateur. A la fin, vous verrez cette ligne:

Connexion fermée par hôte étranger.

Cela arrive toujours parce que HTTP est un protocole sans état.

Douilles Web fournissent un protocole additionnel. Vous pouvez toujours vous connecter à la page Web de la manière normale, mais lorsque vous implémentez une prise Web, vous écrire du code dans votre page Web qui peut se connecter à un socket serveur et de communiquer avec elle. Alors que la page elle-même utilise toujours le protocole HTTP apatride, la connexion de socket reste en place tant que la page est active, permettant une communication complète dans les deux sens, sans ré-établir une connexion.

Le type de connexion que vous obtenez avec ce mécanisme est idéal pour les applications qui nécessitent beaucoup de communication client-serveur, telles que les applications de chat et les jeux multijoueurs.

Bien sûr, pour construire une socket de connexion Web, vous devez avoir à la fois un client et un serveur. Typiquement, le serveur est écrit dans un langage comme PHP ou Python. Vous devez également connaître le programmation de sockets et de la langue du serveur est construit avec de construire un socket serveur. Beaucoup de langues modernes prennent en charge un mode de prise générique qui peut être utilisé pour créer une prise de Web spécialisé.

Le code pour un programme qui permet à l'utilisateur d'entrer des informations, qui est envoyé au serveur et fait écho à dos est un peu longue mais pas très compliquée:

WebSocket test

Web Socket Echo Chamber

Cliquez sur le bouton «Connect» pour se connecter

» » » » HTML5 et Web Sockets