recherche
Maisoninterface Webjs tutorielComment utiliser l'API d'information réseau pour améliorer les sites Web réactifs

How to Use the Network Information API to Improve Responsive Websites

Comment utiliser l'API d'information réseau pour améliorer les sites Web réactifs

Les plats clés

  • L'API d'informations réseau peut améliorer considérablement l'expérience utilisateur sur les sites Web réactifs en fournissant des informations sur la connexion réseau de l'utilisateur, y compris si elle est mesurée et une estimation de la bande passante. Ces informations peuvent être utilisées pour charger conditionnellement des ressources telles que des images, des vidéos, des polices, etc., garantissant des performances optimales même sur des connexions plus lentes ou mesurées.
  • La mise en œuvre de l'API d'information réseau implique l'utilisation de JavaScript pour accéder aux propriétés et méthodes de l'API. L'objet API est renvoyé par Navigator.Connection et fournit deux propriétés en lecture seule: bande passante et mesurée. Ces propriétés peuvent être utilisées pour charger conditionnellement des images haute résolution ou d'autres grands actifs en fonction de l'état de la connexion de l'utilisateur.
  • Malgré ses avantages potentiels, l'API d'information réseau a actuellement un support de navigateur limité et est susceptible de changer. Cependant, il vaut toujours la peine de considérer pour des sites Web ou des applications adaptés aux mobiles, car il peut aider à empêcher les pages de devenir trop importantes et lentes à charger sur les réseaux mobiles. Si l'API change, des mises à jour peuvent être effectuées à la fonction pertinente pour s'assurer que le site continue de réagir de manière appropriée.
La conception Web réactive a révolutionné le Web. Un seul site peut adapter sa disposition lorsqu'il est visualisé sur une gamme de dispositifs et d'écrans différents. Tout ce qui est requis, ce sont quelques requêtes multimédias pour détecter la taille de l'écran et charger des styles ou des feuilles de styles alternatifs. Cependant, l'utilisation de la taille de l'écran pour détecter les capacités du navigateur s'apparente à juger la vitesse d'une voiture en regardant sa radio. Les smartphones et les tablettes modernes ont des résolutions de plus en plus importantes et montreront joyeusement une vue de bureau typique. Si cette vue ajoute de nombreuses polices, images ou autres actifs, l'utilisateur mobile peut recevoir une expérience dégradée - et coûteuse - car elles sont sur une connexion plus lente ou mesurée.

L'API des informations réseau

L'API d'information réseau peut aider. Il indique si l'utilisateur est sur une connexion mesurée, comme le paiement à la répartition, et fournit une estimation de la bande passante. En utilisant ces informations, il est possible de charger conditionnellement des images, des vidéos, des polices et d'autres ressources. À un niveau de base, vous pouvez remplacer une requête multimédia pour vous assurer que la disposition mobile est conservée sur un réseau limité.

Prise en charge du navigateur

Malgré les spécifications du projet API d'informations réseau publiées en 2011, seuls Firefox et Chrome offrent un soutien expérimental pour le moment. Jusqu'à ce que nous ayons un consensus de fournisseur, l'API est susceptible de changer:
  • L'évaluation de la bande passante est difficile. Il peut changer fréquemment lorsque vous vous déplacez ou basculez entre les réseaux mobiles et Wi-Fi. La capacité du réseau peut être bonne, mais il ne suit pas qu'une connexion à un serveur spécifique le sera. Garder l'estimation de la bande passante à jour peut également être un processeur et une forte intensité de réseau.
  • Comment l'appareil peut savoir si votre connexion est mesurée? Même le Wi-Fi rapide peut avoir des coûts ridiculement exorbitants dans certains hôtels et aéroports que je pourrais mentionner. Une option serait que l'appareil vous invite lorsqu'une nouvelle connexion est établie.
Heureusement, nous pouvons utiliser la détection d'objets pour détecter la présence de l'API.

API Basics

L'objet API d'information réseau est renvoyé par Navigator.Connection. Pour assurer la compatibilité des navigateurs croisés, nous avons besoin:
<span>var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;</span>
Vous voudrez peut-être ajouter Navigator.msconnection à cette liste, bien que IE implémente normalement des API non préfixées. Notre connexion L'objet fournit deux propriétés en lecture seule:
  • Bande passante - Un double représentant une estimation de la bande passante actuelle en MB / s (mégaoctets par seconde). La valeur sera nulle si l'utilisateur est hors ligne et infini s'il ne peut pas être déterminé. Remarque La plupart des fournisseurs de réseaux citent les valeurs en mégabits par seconde et une connexion mobile 3G occupé typique sera d'environ 400 Mo
  • METTED - Un booléen qui, lorsqu'il est vrai, signifie que la connexion de l'utilisateur est soumise à une limitation et à l'utilisation de la bande passante devrait être limitée si possible.
  • Par exemple:
Enfin, nous pouvons exécuter un gestionnaire d'événements de changement lorsque l'état de la connexion change, par ex.
<span>if (connection && !connection.metered && connection.bandwidth > 2) {
</span><span>// load high-resolution image
</span><span>var img = document.getElementById("kitten");
</span>
img<span>.src = "/images/kitten_hd.jpg";
</span><span>}</span>
Dans ce code, la variable globale Highbandwidth sera définie lorsque la bande passante élevée sera disponible. Un autre code pourrait réagir en conséquence, par ex. Lorsque la largeur highband est fausse:
<span>// default bandwidth
</span><span>var highBandwidth = false;
</span>
<span>// bandwidth change handler
</span><span>function <span>BandwidthChange</span>() {
</span>highBandwidth <span>= (!connection.metered && connection.bandwidth > 2);
</span><span>console.log(
</span><span>"switching to " +
</span><span>(highBandwidth ? "high" : "low") +
</span><span>" bandwidth mode"
</span><span>);
</span><span>}
</span>
<span>// Network Information object
</span><span>var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
</span>
<span>// initialize
</span><span>if (connection) {
</span>connection<span>.addEventListener("change", BandwidthChange);
</span><span><span>BandwidthChange</span>();
</span><span>}</span>
    Les images haute résolution ne sont pas chargées
  1. Les polices inutiles ne sont pas chargées
  2. Le sondage ajax est ralenti
  3. Les paramètres de délai d'expiration ajax sont augmentés
Pour rendre les choses un peu plus faciles, vous pouvez ajouter une classe à l'étiquette corporelle dans la bande passante fonction, par ex.
<span>var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;</span>
Cela nous permet de charger conditionnellement des éléments tels que des images d'arrière-plan dans CSS, par ex.
<span>if (connection && !connection.metered && connection.bandwidth > 2) {
</span><span>// load high-resolution image
</span><span>var img = document.getElementById("kitten");
</span>
img<span>.src = "/images/kitten_hd.jpg";
</span><span>}</span>
Cette condition peut toujours être vérifiée dans les dispositions de bureau chargées de requêtes multimédias.

devriez-vous utiliser l'API d'information réseau?

Au moment de la rédaction du moment de la rédaction, l'API d'information réseau a peu de support de navigateur et pourrait changer. Cela dit, si vous créez un site Web ou une application qui doit fonctionner sur les appareils mobiles, un peu de planification pourrait maintenant empêcher vos pages d'atteindre 1,7 Mo. Si l'API change, vous devez simplement mettre à jour la fonction BandwidthCange et votre site réagirait de manière appropriée. Je pense certainement que l'API d'information réseau mérite d'être considérée. est-ce que vous?

Questions fréquemment posées (FAQ) sur l'API des informations du réseau

Quelle est l'API des informations réseau et comment fonctionne-t-elle?

L'API d'information réseau est un outil qui fournit des informations sur la connexion réseau qu'un appareil utilise pour communiquer avec le Web. Il permet aux applications Web d'accéder à l'état du type de réseau et de la vitesse d'un appareil, qui peuvent être utilisés pour optimiser la livraison de contenu. Par exemple, si un utilisateur est sur un réseau lent, un site Web pourrait choisir d'envoyer des images de qualité inférieure pour améliorer les temps de chargement.

Comment puis-je utiliser l'API d'information réseau pour améliorer mon site Web réactif?

L'API d'informations réseau peut être utilisée pour améliorer l'expérience utilisateur sur votre site Web réactif. En détectant les conditions du réseau de l'utilisateur, vous pouvez adapter le comportement de votre site Web en conséquence. Par exemple, si le réseau de l'utilisateur est lent, vous pouvez réduire la quantité de données que vous envoyez, telles que des images de résolution inférieure ou moins de contenu vidéo. Cela peut considérablement améliorer la vitesse de chargement et les performances globales de votre site Web.

L'API d'informations réseau est-elle prise en charge par tous les navigateurs?

L'API d'information réseau n'est pas prise en charge par tous les navigateurs. À l'heure actuelle, il est pris en charge par Chrome, Opera et Android Browsers. C'est toujours une bonne idée de vérifier les dernières informations de compatibilité du navigateur sur des sites Web comme «puis-je utiliser» avant d'implémenter de nouvelles API.

Comment puis-je implémenter l'API d'informations réseau dans mon application Web?

La mise en œuvre de l'API d'informations réseau implique l'utilisation de JavaScript pour accéder aux propriétés et méthodes de l'API d'informations réseau. Vous pouvez utiliser les propriétés Navigator.Connection ou Navigator.MozConnection pour obtenir un objet NetworkInformation représentant la connexion de l'utilisateur, puis utiliser les propriétés et les gestionnaires d'événements de cet objet pour obtenir des informations sur la connexion et réagir aux modifications de la connexion.

Quel type d'informations puis-je obtenir de l'API d'informations réseau?

L'API d'informations réseau fournit plusieurs propriétés qui donnent des informations sur la connexion réseau de l'utilisateur. Il s'agit notamment de la liaison descendante, de l'efficacité et de la RTT, qui fournissent la bande passante dans les mégabits par seconde, le type effectif de la connexion et le temps aller-retour en millisecondes, respectivement.

peut être utilisée par l'API d'informations réseau pour détecter l'état hors ligne?

Oui, l'API d'information réseau peut être utilisée pour détecter si l'appareil de l'utilisateur est hors ligne. La propriété Navigator.online renvoie une valeur booléenne qui indique si l'appareil de l'utilisateur est en ligne ou hors ligne.

Quelle est la fiable des données de l'API d'informations réseau?

Les données de l'API d'information réseau sont fiables est une estimation et peut ne pas être complètement précis. Il est basé sur des conditions de réseau récemment observés et peut ne pas refléter les conditions réelles du réseau actuel. Par conséquent, il doit être utilisé comme guide plutôt que comme une mesure définitive des conditions du réseau.

L'API d'informations réseau peut-elle être utilisée avec les travailleurs de service?

Oui, l'API d'information réseau peut être utilisé avec les travailleurs du service. Cela vous permet d'adapter le comportement de votre travailleur de service en fonction des conditions de réseau de l'utilisateur, telles que la mise en cache plus agressive lorsque l'utilisateur est sur un réseau lent.

Quelles sont les implications de confidentialité de l'utilisation de l'API d'information réseau?

L'API des informations réseau peut potentiellement être utilisée pour les utilisateurs d'empreintes digitales en fonction de leurs conditions de réseau. Cependant, l'API fournit uniquement des informations à grain grossier sur le réseau, et ces informations sont également disponibles pour les applications natives, de sorte que le risque de confidentialité supplémentaire est minime.

Quels sont les cas d'utilisation pour l'API d'information du réseau?

L'API d'information réseau peut être utilisée de diverses manières pour améliorer l'expérience utilisateur. Par exemple, un site de streaming vidéo peut l'utiliser pour sélectionner automatiquement la qualité vidéo appropriée en fonction de la vitesse du réseau de l'utilisateur. Un site d'information pourrait l'utiliser pour décider de charger des images haute résolution ou de qualité inférieure. Une application Web pourrait l'utiliser pour avertir les utilisateurs lorsqu'ils sont sur un réseau lent et certaines fonctionnalités peuvent ne pas fonctionner de manière optimale.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Au-delà du navigateur: Javascript dans le monde réelAu-delà du navigateur: Javascript dans le monde réelApr 12, 2025 am 12:06 AM

Les applications de JavaScript dans le monde réel incluent la programmation côté serveur, le développement des applications mobiles et le contrôle de l'Internet des objets: 1. La programmation côté serveur est réalisée via Node.js, adaptée au traitement de demande élevé simultané. 2. Le développement d'applications mobiles est effectué par le reactnatif et prend en charge le déploiement multiplateforme. 3. Utilisé pour le contrôle des périphériques IoT via la bibliothèque Johnny-Five, adapté à l'interaction matérielle.

Construire une application SaaS multi-locataire avec next.js (intégration backend)Construire une application SaaS multi-locataire avec next.js (intégration backend)Apr 11, 2025 am 08:23 AM

J'ai construit une application SAAS multi-locataire fonctionnelle (une application EdTech) avec votre outil technologique quotidien et vous pouvez faire de même. Premièrement, qu'est-ce qu'une application SaaS multi-locataire? Les applications saas multi-locataires vous permettent de servir plusieurs clients à partir d'un chant

Comment construire une application SaaS multi-locataire avec Next.js (Frontend Integration)Comment construire une application SaaS multi-locataire avec Next.js (Frontend Integration)Apr 11, 2025 am 08:22 AM

Cet article démontre l'intégration frontale avec un backend sécurisé par permis, construisant une application fonctionnelle EdTech SaaS en utilisant Next.js. Le frontend récupère les autorisations des utilisateurs pour contrôler la visibilité de l'interface utilisateur et garantit que les demandes d'API adhèrent à la base de rôles

JavaScript: Explorer la polyvalence d'un langage WebJavaScript: Explorer la polyvalence d'un langage WebApr 11, 2025 am 12:01 AM

JavaScript est le langage central du développement Web moderne et est largement utilisé pour sa diversité et sa flexibilité. 1) Développement frontal: construire des pages Web dynamiques et des applications à une seule page via les opérations DOM et les cadres modernes (tels que React, Vue.js, Angular). 2) Développement côté serveur: Node.js utilise un modèle d'E / S non bloquant pour gérer une concurrence élevée et des applications en temps réel. 3) Développement des applications mobiles et de bureau: le développement de la plate-forme multiplateuse est réalisé par réact noral et électron pour améliorer l'efficacité du développement.

L'évolution de JavaScript: tendances actuelles et perspectives d'avenirL'évolution de JavaScript: tendances actuelles et perspectives d'avenirApr 10, 2025 am 09:33 AM

Les dernières tendances de JavaScript incluent la montée en puissance de TypeScript, la popularité des frameworks et bibliothèques modernes et l'application de WebAssembly. Les prospects futurs couvrent des systèmes de type plus puissants, le développement du JavaScript côté serveur, l'expansion de l'intelligence artificielle et de l'apprentissage automatique, et le potentiel de l'informatique IoT et Edge.

Démystifier javascript: ce qu'il fait et pourquoi c'est importantDémystifier javascript: ce qu'il fait et pourquoi c'est importantApr 09, 2025 am 12:07 AM

JavaScript est la pierre angulaire du développement Web moderne, et ses principales fonctions incluent la programmation axée sur les événements, la génération de contenu dynamique et la programmation asynchrone. 1) La programmation axée sur les événements permet aux pages Web de changer dynamiquement en fonction des opérations utilisateur. 2) La génération de contenu dynamique permet d'ajuster le contenu de la page en fonction des conditions. 3) La programmation asynchrone garantit que l'interface utilisateur n'est pas bloquée. JavaScript est largement utilisé dans l'interaction Web, les applications à une page et le développement côté serveur, améliorant considérablement la flexibilité de l'expérience utilisateur et du développement multiplateforme.

Python ou JavaScript est-il meilleur?Python ou JavaScript est-il meilleur?Apr 06, 2025 am 12:14 AM

Python est plus adapté à la science des données et à l'apprentissage automatique, tandis que JavaScript est plus adapté au développement frontal et complet. 1. Python est connu pour sa syntaxe concise et son écosystème de bibliothèque riche, et convient à l'analyse des données et au développement Web. 2. JavaScript est le cœur du développement frontal. Node.js prend en charge la programmation côté serveur et convient au développement complet.

Comment installer JavaScript?Comment installer JavaScript?Apr 05, 2025 am 12:16 AM

JavaScript ne nécessite pas d'installation car il est déjà intégré à des navigateurs modernes. Vous n'avez besoin que d'un éditeur de texte et d'un navigateur pour commencer. 1) Dans l'environnement du navigateur, exécutez-le en intégrant le fichier HTML via des balises. 2) Dans l'environnement Node.js, après avoir téléchargé et installé Node.js, exécutez le fichier JavaScript via la ligne de commande.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

Version crackée d'EditPlus en chinois

Version crackée d'EditPlus en chinois

Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code