Communiquer avec le serveur depuis un navigateur Web : XHR, SSE et WebSockets

112
18
avr.
2021
Internet

Dans cette dépêche, nous allons faire un tour d’horizon de différentes manières de communiquer avec un serveur depuis une application Web, avec un petit peu d’histoire, avant de rentrer plus profondément dans le fonctionnement des WebSockets, que nous allons démystifier. Nous digresserons ensuite à propos de la gestion (problématique) des requêtes longues et de HTTP 2 avec Apache, et nous discuterons d’une manière de limiter la casse. La dépêche contient quelques morceaux raisonnables mais l’absurdité est latente.

Supposons que nous ayons une application Web qui a besoin de recevoir des évènements du serveur pour voir si quelque chose s’est passé. À tout hasard, un jeu de société en ligne. Ce jeu a besoin d’envoyer les coups des joueurs et joueuses, et de recevoir les coups des autres.

Le serveur ne peut pas contacter le navigateur. Celui-ci est peut-être derrière un pare-feu, et de toute façon il n’y a pas de méthode pour cela. Le modèle du web, c’est une requête HTTP de la part du navigateur, et le serveur sert cette requête. Et puis, à la base, une requête = un chargement de page.

Mais des techniques sont apparues pour abuser de ce modèle, puis les standards se sont mis à intégrer des méthodes pour mener ces abus en toute sérénité.

Firefox 67 introduit l’acte II du projet Quantum

91
22
mai
2019
Mozilla

La version 67 de Firefox a été publiée le 21 mai 2019.
Logo de Firefox Quantum

Les principales nouveautés portent sur la version bureau et concernent le lancement officiel de WebRender (limité à certaines configurations sous Windows dans un premier temps), des améliorations de performance, des raffinements de l’interface, la prise en charge du décodage de AV1 sur Windows, macOS et GNU/Linux et, surtout, des mesures significatives permettant de renforcer la protection de la vie privée.
Comme d’habitude, le détail des nouveautés suit en seconde partie.

N. D. M. : l’équipe de modération tient à remercier antistress pour l’exceptionnelle précision documentaire de sa dépêche.

Firefox 80 Quantum et Daylight sont sortis !

75
26
août
2020
Mozilla

Les versions 80 de Firefox Quantum (GNU/Linux, Windows et macOS) et Daylight (Android) ont été publiées le 25 août 2020.

Les principales nouveautés à signaler sont la version 2 du mode de protection renforcée contre le pistage — en fait sortie juste après la version 79 — et le développement bouillonnant du nouveau Firefox pour Android, nom de code : Daylight.

Le détail dans la deuxième partie.

80 km/h - Nicolas Duprey/ CD 78 - Département des Yvelines - licence CC BY-ND 2.0 - source : https://www.flickr.com/photos/yvelines/42146553605/

Firefox 4 est sorti

Posté par  . Modéré par j. Licence CC By‑SA.
74
22
mar.
2011
Mozilla

Après plus d’un an d’attente, 12 versions bêta, et 2 versions candidates, Firefox 4 est enfin sorti ce 22 mars. Les principales nouveautés sont Gecko 2.0 (le moteur de rendu), un moteur JavaScript plus rapide comprenant JägerMonkey, un compilateur JIT (en plus de TraceMonkey, l’optimiseur de boucles présent dans Firefox 3.6), ainsi que l’accélération 3D matérielle et une interface utilisateur revue.

Cette sortie marque aussi une volonté de changement dans les cycles de sortie, en voulant les rendre plus courts. Il faudra voir si ce vœu est respecté. Le protocole Websocket est le grand absent de cette version ; il a été désactivé car, comme les sockets Flash et Java, les websockets peuvent simuler du HTTP et ainsi empoisonner le cache de certains serveurs mandataires (proxies) configurés pour intercepter les requêtes HTTP sans la collaboration des clients.

Pour rappel, Firefox est disponible sous les licences GPL 2, LGPL 2.1 et MPL 1.1.

Merci à esa, Chimrod, Obsidian, ymorin, gnumdk et barmic pour leur aide lors de la rédaction.

Firefox 72

69
8
jan.
2020
Mozilla

La version 72 de Firefox pour le bureau a été publiée le 7 janvier 2020. Les principales améliorations concernent la fin des fenêtres surgissantes pour les notifications des sites Web, le blocage par défaut des détecteurs d’empreinte numérique, et le mode « image dans l’image » — Picture in Picture — qui débarque (notamment) sur GNU/Linux !

Par ailleurs, un bogue touchant Firefox 71 dans ses versions diffusées par les distributions GNU/Linux qui entravait le bon fonctionnement de différentes extensions (qui ne pouvaient plus sauvegarder localement leurs données de fonctionnement) a été corrigé dans l’intervalle.

Comme d’habitude, les nouveautés sont développées dans la deuxième partie.

Journal Il faut sauver le soldat Firefox!

Posté par  . Licence CC By‑SA.
67
12
mai
2016

Un court journal semi marque-page pour relayer ce billet de Cory Doctorow, sur le site de l'EFF. Par un heureux hasard, il se trouve que Doctorow a su énoncer clairement et succintement l'importance d'un navigateur tel que Firefox :

We need competition; we also need diversity. We need the possibility that young, game-changing market entrants might come along. We need that idea to be kept alive, to make sure that all the browsers don't shift from keeping users happy (…)

Next v1.3.0, le navigateur web entièrement programmable

67
6
août
2019
Internet

Je suis heureux de vous présenter le navigateur Next, projet que j’ai rejoint il y a deux mois, et dont la version 1.3.0 livre son lot de fonctionnalités attendues pour un usage quotidien :

  • blocage de publicités (par domaine) ;
  • sélection approchée / fuzzy améliorée ;
  • raccourcis claviers à la Vim ;
  • un gestionnaire de téléchargements ;
  • un mode NoScript ;
  • un « back‐end » basé sur Blink, le moteur de rendu de Chrome (qui s’ajoute au back‐end WebKit) ;
  • prise en charge des serveurs mandataires (proxies), donc de Tor ;
  • et plus encore.

Oui, le tester donne envie de ne plus s’en séparer. :)

Next est unique car il n’expose pas d’API, il est totalement ouvert et programmable, et qui plus est programmable à chaud, il n’y a pas besoin de le redémarrer pour tester ses changements. Et au contraire des projets similaires (Konqueror ou Vimperator qui sont morts, Qutebrowser…), il n’est pas lié à un moteur de rendu particulier.

Je vous propose de le découvrir, et de nous soutenir pour voir une version 1.4 !

Firefox 67.0.1 : version mineure ou majeure ?

Posté par  (site web personnel) . Édité par Davy Defaud. Modéré par Davy Defaud. Licence CC By‑SA.
66
23
juin
2019
Mozilla

La version 67.0.1 de Firefox a été publiée le 4 juin 2019.

De manière un peu étrange et inhabituelle, Mozilla a lancé une nouvelle fonctionnalité à l’occasion d’une mise à jour mineure. Plus exactement, la fonctionnalité existante depuis la version 63 de lutte contre le pistage intersite est désormais activée par défaut sur les nouvelles installations.

Et elle sera étendue au fur et à mesure pour les profils existants.

Logo pour Firefox filant la métaphore du bouclier contre le pistage

Firefox 64 bitte !

Posté par  (site web personnel) . Édité par Davy Defaud, Adrien Dorsaz, BAud, Benoît Sibaud et ZeroHeure. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
62
12
déc.
2018
Mozilla

La version 64 de Firefox a été publiée le 11 décembre 2018.

Alors que la précédente version apportait son lot de changements principalement sous le capot (gros travail d’enrichissement de l’API WebExtensions, déport de l’exécution des WebExtensions dans un processus dédié sous GNU/Linux, passage au compilateur Clang sous MS Windows…), cette version apporte deux nouveautés majeures : une sous le capot, avec l’intégration du nouveau moteur de rendu graphique WebRender, activée par défaut sur certaines configurations ; l’autre au niveau de l’interface, avec la possibilité très attendue par certains de pouvoir interagir sur plusieurs onglets simultanément.

Comme d’habitude, le détail des nouveautés suit en deuxième partie.

Firefox 66 sur la route !

60
20
mar.
2019
Mozilla

La version 66 de Firefox a été publiée le 19 mars 2019.

Les principales nouveautés amélioreront votre confort (lecture automatique bloquée sur les versions bureau et Android, défilement d’une page en cours de chargement optimisé pour éviter les sauts sur la version bureau), votre productivité (recherche possible à travers les onglets ouverts sur la version bureau, prise en charge préliminaire de la Touch Bar des Mac), sans oublier les performances et la sécurité!

Nous évoquerons aussi les avancées dans l’implémentation du moteur de rendu graphique WebRender, et un nouveau projet d’envergure : Fission.

Comme d’habitude, le détail des nouveautés suit ci‐dessous.

Firefox 71

59
5
déc.
2019
Mozilla

La version 71 de Firefox desktop a été publiée le 3 décembre 2019.

Difficile de dégager cette fois une ligne directrice de cette nouvelle version aux multiples améliorations. Nous citerons cependant, côté émergé, quelques nouveautés pratiques comme l’ajout d’un mode kiosque qui était attendu de longue date, ou une fonction d’incrustation vidéo pour le moment limitée à Windows. Côté immergé, tous les chantiers se poursuivent : déploiement de WebRender, projet Fission, nettoyage de XUL, extension de la Protection renforcée contre le pistage, développement de Firefox Preview… Tous ces chantiers écloront à leur tour dans une prochaine version.

Comme d’habitude, les nouveautés sont développées dans la deuxième partie.

Firefox 69 ☯

58
15
oct.
2019
Mozilla

La version 69 de Firefox desktop a été publiée le 3 septembre 2019.

Les nouveautés apportent notamment une meilleure protection de la vie privée, une réduction des nuisances (blocage des vidéos), sans parler du travail de fond sur l’amélioration des performances qui se poursuit activement.

Comme d’habitude, les nouveautés sont développées dans la deuxième partie.

Une petite pensée, pour clore cette introduction : le 23 septembre, il y a dix‑sept ans, était publié Phoenix 0.1, lequel deviendra par la suite Firefox…

Firefox 65

Posté par  (site web personnel) . Édité par Davy Defaud, ZeroHeure, Julien Jorge, barmic et cracky. Modéré par bubar🦥. Licence CC By‑SA.
57
30
jan.
2019
Mozilla

La version 65 de Firefox a été publiée le 29 janvier 2019.

Les principales nouveautés concernent la protection contre le suivi, le multilinguisme, des performances accrues et, seulement pour Windows, une meilleure diffusion vidéo.

Comme d’habitude, le détail des nouveautés suit en deuxième partie.

Firefox 75 : Pâques avant l’heure

57
7
avr.
2020
Mozilla

La version 75 de Firefox desktop a été publiée le 7 avril 2020.

D’une manière générale, la principale amélioration est la refonte de l’Awesomebar. Plus particulièrement si vous êtes linuxien, vous pourrez constater que la restauration de session tient désormais compte des espaces de travail, et vous pourrez même tester les nouveaux procédés d’accélération du rendu WebGL et du décodage H.264 : c’est Pâques avant l’heure !

Les nouveautés sont développées dans la deuxième partie.

Journal Linux dans votre navigateur web

Posté par  . Licence CC By‑SA.
56
17
mai
2011

Après, entre autre, Qemu, Ffmpeg, Tcc et après avoir calculé le plus grand nombre de décimales de Pi, Fabrice Bellard nous livre cette fois-ci, un émulateur x86 tournant dans un navigateur web. Pour tester, il vous faudra utiliser soit FF4 soit Chromium. (A noter: l'exécution dans FF est environ 2 fois plus rapide.)

L'image disque est un ramfs qui contient un système de fichiers créé avec buildroot contenant busybox. Le noyau est un 2.6.20. Pour l'instant, il (…)