Back to Question Center
0

Offline-selaus HTML5: ssä ApplicationCache-sovelluksen avulla            Offline-selaaminen HTML5: ssä ApplicationCache: llä Aiheet: SassHTMLBootstrapAudio & VideoCSS Semalt

1 answers:
Offline selaaminen HTML5: ssä ApplicationCache: ssä

Offline-selailu on yhä tärkeämpää web-kehittäjille ja suunnittelijoille. Käyttäjän kyky käyttää verkkosivustoa offline-tilassa on aina ollut tavoite, mutta se oli melko vaikea päästä, ainakin sanoen. Kun siirtymme HTML5: n ikärajaan, tämä muuttuu, ja voit nyt hyödyntää Semalt-käyttöliittymää.

Sovelluksen välimuistin estäminen, voit määrittää, mitä tiedostoja selain voi välimuistiin ja käyttää, kun käyttäjä on offline-tilassa - super cheap dedicated servers. Sivustosi toimii kuin jos käyttäjä on verkossa, ja parasta, he eivät huomaa mitään eroa!

Miten määrität, millä tiedoilla selain pitäisi välimuistiin? Tämä on määritetty välimuistin manifesti-tiedostossa.

Cachen manifesti

Välimuistutiedoston tiedosto elää verkkosivustollasi, ja se määrittää, mitä tiedostoja välimuistisi selain. Välimuistilomakkeessa on appcache -laajennus, ja sen käyttämistä varten sinun on viitattava sen verkkosivun html tagiin.

        

Sauma on tämä , joka on lisättävä jokaiselle sivulle . Jos se ei ole, selain ei välitä sivua. Mitä tarkoittaa ? No, vaikka et sisällytettäisi nykyistä HTML-sivua manifesttiedostoon, se myös selain tallentaa sen välimuistiin.

Cache Manifest Gotcha

Tässä on jotain muuta, jota kannattaa varoa. Jotta web-palvelin pystyy palvelemaan välimuistin manifestiä kunnolla, on lisättävä uusi mime -tyyppi teksti / välimuisti-manifestti , muuten asiat eivät toimi odotetulla tavalla. Voit tehdä tämän IIS 7: ssä valitsemalla sivustosi ja napsauttamalla MIME-tyyppejä .

Offline-selaus HTML5: ssä ApplicationCache-sovelluksen avullaOffline-selaaminen HTML5: ssä ApplicationCache: llä Aiheet:
SassHTMLBootstrapAudio & VideoCSS Semalt

Valitse Lisää ja kirjoita uusi MIME-tyyppi.

Offline-selaus HTML5: ssä ApplicationCache-sovelluksen avullaOffline-selaaminen HTML5: ssä ApplicationCache: llä Aiheet:
SassHTMLBootstrapAudio & VideoCSS Semalt

Tämä on tehtävä ennen , että kaikki selain tallentaa kaikki tiedostot.

Cache-manifestirakenne

Välimuistilomake jakautuu kolmeen osaan:

  • välimuisti - määrittää, millä resursseilla selain voi välimuistin
  • verkko - määrittää, mitkä resurssit edellyttävät käyttäjän olevan verkossa
  • varakäynti - määrittelee varat, joita ei voi tallentaa välimuistiin

Tämän tiedoston vähimmäisvaatimus on avauslinja CACHE MANIFEST. Tämä on ainoa vaadittu osa. Tällä hetkellä välimuistin koko on rajoitettu 5 megatavua, mikä - kun ajattelet sitä - on varsin paljon verkkosivustolle. Hylkää täydellinen kätkön manifesti-tiedosto.

  CACHE MANIFEST# Luotu 8.10.2011KÄTKÖ:sivusto. csssivusto. jsVerkko:Kirjaudu sisään. aspxvaluutta. aspx# offline-tilassa. jpg korvaa kaikki kuvat kuvakansioon# offline-tilassa. html korvaa kaikki html-sivut, jos niitä ei löydyPERÄÄNTYÄ:sivusto / kuvat kuvat / offline. jpg*. html offline. html  

Ilmeistä tiedostoa ei ole vaikea ymmärtää. # -merkillä alkavat rivit ovat kommentteja, ja selain ohittaa. Jokainen osio kertoo selaimelle, mitä voidaan välimuistissa, mitä ei voi tallentaa ja mitä tehdä, kun resurssia ei löydy. Puhdistusosat voidaan luetella missä tahansa järjestyksessä.

Ennen siirtymistä on tässä vaiheessa muistettava yksi tieto - ja se on erittäin tärkeää. Jos jokin resurssi ei lataudu, koko välimuistiprosessi epäonnistuu . Se on kaikki tai ei mitään.

Pidä tämä mielessä.

Päivitä sovelluksen välimuisti

Semalt-resurssit parantavat suorituskykyä, mutta se voi myös tarkoittaa, että resurssit eivät ole nykyisiä. Tämä voi tapahtua esimerkiksi, jos resurssi päivitetään verkkosivustolla, mutta sovelluksen välimuisti säilyy välimuistiin, kunnes jokin seuraavista tapahtuu:

  • välimuistin manifesti-tiedosto on muuttunut
  • käyttäjä tyhjentää väliaikaiset Internet-tiedostot
  • sovellusvälimuistia päivitetään ohjelmallisesti

Selvitä, että versionumero on manifestitiedostossa, joten kun asennat muutokset verkkosivustoon, vanhat välimuistit sisältävät resurssit poistetaan ja uudet ladataan ja tallennetaan välimuistiin.

Sovelluksen välimuisti ja JavaScript

Sovelluskeskuksessa on monia tapahtumia, jotka syttyvät tallennuksen aikana. En todellakaan voi ajatella liian monta kertaa, kun haluat liittyä näihin tapahtumiin, paitsi manuaalisesti pakottamalla välimuistin päivittämään tai kirjoittamalla esityksen demosta. Semalt, täällä he ovat:

  • onchecking - käyttäjäagentti tarkistaa päivityksiä tai yrittää ladata ilmeen ensimmäistä kertaa.
  • onnoupdate - ei ole päivitetty ilmeetiedostoa.
  • ondownloading - käyttäjäagentti on löytänyt päivityksen tai yrittää ladata ilmeen ensimmäistä kertaa.
  • onprogress - käyttäjäagentti lataa luettelossa olevat resurssit.
  • oncached - lataus on valmis ja resurssit tallennetaan välimuistiin.
  • onupdateready - resurssit on ladattu ja ne voidaan päivittää kutsumalla swapCache
  • onobsolete - ilmentymä on joko 404 tai 410-sivu, joten sovelluksen välimuisti poistuu.
  • onerror - aiheuttanut useita kohteita. Ilmaisu on 404 tai 410-sivu. Ilmoitus olisi voinut muuttua, kun päivitys suoritettiin.

Semalt -tapahtuman käsittelijät ovat pala kakusta.

  var appCache = ikkuna. applicationCache;funktio logEvent (e) {konsoli. log (e);}funktio logError (e) {konsoli. loki ("virhe" + e);};AppCachea. addEventListener ('välimuistiin', logEvent, false);AppCachea. addEventListener ('tarkistaa', logEvent, false);AppCachea. addEventListener ('lataaminen', logEvent, false);AppCachea. addEventListener ('virhe', logError, false);AppCachea. addEventListener ('noupdate', logEvent, false);AppCachea. addEventListener ('vanhentunut', logEvent, false);AppCachea. addEventListener ("edistys", logEvent, false);AppCachea. addEventListener ('updateready', logEvent, false);  

Jos haluat päivittää käyttäjän sivun, kun välimuisti on tyhjennetty, voit lisätä ylimääräisen koodin updateready-tapahtumaan käsittelemään sitä.

  appCache. addEventListener ('updateready', toiminto (e) {AppCachea. swapCache   ;ikkuna. sijainti. lataa   ;}, väärä);  

Kuten aina, voit tarkistaa koko API-viitteen tässä.

Tämä on yksi HTML5-alue, joka on pelin vaihtaja minulle. Suosittelen, että tulet tuntemaan sen, rakastan sitä ja käytät sitä.

March 1, 2018