interface réseau d'une PWA.

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par ortolojf, 29 Janvier 2022.

  1. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 679
    J'aime reçus:
    39
    Bonjour

    J'ai étudié le protocole de cache HTTP.

    Je me prépare à la conception/programmation d'une PWA, censée représenter mon site web de statistiques/pronostics courses de chevaux.

    Les PWA ont des caches spécifiques avec logique programmée dans les réponses à l'event Fetch.

    Mais il y a aussi en amont, la logique du protocole de cache HTTP.

    Ma question : ces réponses à l'event Fetch dans la PWA, doivent-elle ( c'est probable ), en amont simuler un navigateur, c'est-à-dire comporter ce protocole de cache HTTP ?

    Et en aval, les caches spécifiques de la PWA.

    Si oui, ( c'est annexe ), y a-t-il déjà sur le net, des librairies Javascript implémentant ces caches ?

    Merci beaucoup de vos réponses.

    Amicalement.
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    Non
     
    colonies apprécie ceci.
  3. colonies
    colonies WRInaute impliqué
    Inscrit:
    10 Septembre 2006
    Messages:
    683
    J'aime reçus:
    113
    https://github.com/jakearchibald/idb
    Et de la doc : https://developer.mozilla.org/fr/docs/Web/API/Cache

    Mais le fetch passe de toute façon par le cache du navigateur, le reste c'est si tu veux mettre en place un cache toi-même pour un fonctionnement offline (surtout).
    Tu devrais commencer par un truc simple où tu ne mets rien en cache toi-même.

    There are only two hard things in Computer Science: cache invalidation and naming things.
    -- Phil Karlton
     
  4. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 679
    J'aime reçus:
    39
    Bonjour colonies

    Evidemment, une PWA déjà installée, dépend du navigateur ?

    Si non, son javascript et html ne pourrait pas être interprété.

    J'hésite surtout sur les types d'objets à mettre en cache simple, je dispose déjà de routines fetch tout azimut.

    Merci beaucoup pour ton aide.

    Amicalement.
     
  5. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 679
    J'aime reçus:
    39
    Bonjour

    Voici deux routines faisant : Cache ou Fetch puis mise en cache.

    Quelle est la plus rapide des deux ?

    Merci beaucoup.


    Code:
    /**  SIMPLE CACHE THEN NETWORK THEN CACHE  **/
    
    self.addEventListener('fetch', (event) => {
      event.respondWith(async function() {
        const cache = await caches.open('mysite-dynamic');
        const cachedResponse = await cache.match(event.request);
        if (cachedResponse) return cachedResponse;
        const networkResponse = await fetch(event.request);
        event.waitUntil(
          cache.put(event.request, networkResponse.clone())
        );
        return networkResponse;
      }());
    });
    
    
    /**  COMPLEX CACHE THEN NETWORK THEN CACHE  **/
    
    self.addEventListener('fetch', (event) => {
      event.respondWith(async function() {
        const cache = await caches.open('mysite-dynamic');
        const cachedResponse = await cache.match(event.request);
        const networkResponsePromise = fetch(event.request);
        event.waitUntil(async function() {
          const networkResponse = await networkResponsePromise;
          await cache.put(event.request, networkResponse.clone());
        }());
        // Returned the cached response if we have one, otherwise return the network response.
        return cachedResponse || networkResponsePromise;
      }());
    });
    
    
     
  6. Jan31
    Jan31 Nouveau WRInaute
    Inscrit:
    19 Décembre 2021
    Messages:
    17
    J'aime reçus:
    1
    ortolojf, j'apprécie tes posts, j'aime lire des choses techniques que je ne comprends pas,
    Sans vouloir offenser personne, je pense que les participants à ce forum ne sont pas les mieux placés pour t'aider. En dehors de 2 ou 3 geeks. Tu pourrais trouver plus de matière sur les forums de codage.
    Mais pour parler seo, c'est ici.
     
  7. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 679
    J'aime reçus:
    39
    Ah bon...

    Maintenant, j'en suis à la phase de transport des données.

    Vaut-il mieux :

    - télécharger du HTML?

    - télécharger du JSON ?

    - lire une base de données distante de type Firebase ?

    des points de vue :

    - rapidité,

    - économie réseau.

    Merci beaucoup
     
  8. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 679
    J'aime reçus:
    39
    Pardon

    En préparation de ma PWA.

    J'ai commis une page Mustache, cette technologie semble alourdir le réseau, car les données brutes prennent plus de place que le code html équivalent.

    Je pourrais mettre des data avec des variables/clés plus petites.

    Voici : https://www.pronostics-courses.fr/tmp_page.php

    C'est un calendrier avec des liens hyper-textes réels et pas de onclick.

    Merci beaucoup de vos conseils et avis.
     
  9. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 679
    J'aime reçus:
    39
    Voilà voilà

    C'est beaucoup plus léger.

    7944 octet de html.

    Vive Mustache ! ;)

    Après c'est un pensum de déterminer le fixe et le variable des pages.

    Dur, dur...
     
    #9 ortolojf, 21 Février 2022
    Dernière édition: 21 Février 2022
  10. Jan31
    Jan31 Nouveau WRInaute
    Inscrit:
    19 Décembre 2021
    Messages:
    17
    J'aime reçus:
    1
    La vie est dure. Voire injuste. Mais c'est la vie.
     
Chargement...
Similar Threads - interface réseau PWA Forum Date
IPTABLE, avec plusieurs interfaces réseaux. Administration d'un site Web 24 Octobre 2009
Le menu n'apparait pas dans l'interface Google Ads AdWords 17 Novembre 2019
Google change l'interface des résultats Google : l'entreprise, les sites web, les services 13 Juin 2019
Avis sur nouvelle interface Google Search Console Crawl et indexation Google, sitemaps 27 Septembre 2018
lisibilité/usability interface web. Demandes d'avis et de conseils sur vos sites 6 Février 2018
Possible de fixer le Serial number DNS avec l'interface Gandi expert ? Administration d'un site Web 13 Février 2017
Disparition Campagne Emailing dans nouvelle interface GA ? Google Analytics 2 Mars 2015
Nouvelle interface : Comment Isoler les visites arrivées par une expression clé ? Google Analytics 24 Septembre 2014
Interface d'administration avec upload images Développement d'un site Web ou d'une appli mobile 22 Août 2014
[Interface Google Analytics] Manque d'infos suite à la nouvelle version... Google Analytics 10 Mai 2012
Nouvelle interface webmaster tools et robot.txt Crawl et indexation Google, sitemaps 6 Octobre 2011
[résolu] [Paypal] Forcer la langue de l'interface client Monétisation d'un site web 25 Août 2011
Jurisprudence sur la protection des interfaces graphiques Droit du web (juridique, fiscalité...) 19 Avril 2011
Nouvelle interface Analytics v5 2011 Google Analytics 10 Avril 2011
Interface de paiement France pour clients US e-commerce 22 Février 2011
Mise à jour de Google Documents : interface plus lisible Google : l'entreprise, les sites web, les services 1 Février 2011
Interface Analytics hs ? Google Analytics 4 Décembre 2010
Nouvelle VS Ancienne Interface - Volumes de requetes differents ?!? AdWords 14 Septembre 2010
Microsoft Internet Explorer 9 : Microsoft dévoile interface et fonctionnalités par erreur Le café de WebRankInfo 27 Août 2010
Sites de petites annonces et interfaces UGLY -_- WTF? Développement d'un site Web ou d'une appli mobile 15 Juillet 2010