Mikä on session storage ja miten se eroaa local storagesta?

Session storage tallentaa dataa selaimeen välilehden istunnon ajaksi. Opi, miten se toimii, miten se eroaa local storagesta ja mihin sivustot sitä käyttävät.

Luonnos

Session storage tallentaa dataa selaimeen vain niin kauaksi, kuin välilehti on auki. Opi, miten se toimii, miten se eroaa local storagesta ja mihin sivustot sitä käyttävät.

Entä jos sivusto muistaisi juuri sen verran, että vierailusi sujuu hyvin, mutta ei säilyttäisi mitään, kun poistut? Ei jäljelle jäänyttä dataa, ei tallennettuja asetuksia, ei mitään, mikä viipyy. Vain oikea tieto oikealla hetkellä, ja sitten se on poissa. Se on session storagen idea, ja se on hyödyllisempi kuin ensin voisi kuulostaa.

Jos olet jo lukenut luvun local storagesta, tiedät, että se pitää datan elossa, vaikka selain suljettaisiin. Session storage toimii päinvastoin. Se on suunniteltu tilapäiseksi, eikä se ole rajoitus vaan tarkoituksellinen ominaisuus.

Mikä on session storage?

Session storage on selaimen tallennustyyppi, joka tallentaa dataa selaimen välilehden istunnon ajaksi. Niin kauan kuin välilehti pysyy auki, data on saatavilla. Heti kun kävijä sulkee tuon välilehden, session storage tyhjennetään automaattisesti. Avaa sama sivusto uudessa välilehdessä, ja session storage alkaa tyhjänä.

Local storagen tavoin session storage toimii avain-arvo-varastona. Sivustot kirjoittavat dataa nimikkeen ja arvon avulla ja noutavat sen hakemalla nimikkeen. Ero on pelkästään siinä, kuinka kauan data säilyy. Local storage säilyy toistaiseksi. Session storage elää ja kuolee välilehden mukana.

Miten session storage eroaa local storagesta?

Keskeinen ero on pysyvyys. Local storagen data pysyy selaimessa, kunnes se poistetaan käsin. Session storagen data katoaa heti, kun välilehti suljetaan. Siksi ne sopivat eri tilanteisiin.

Session storage on myös välilehtikohtainen. Jos kävijällä on sama sivusto auki kahdessa eri välilehdessä, kummallakin välilehdellä on oma erillinen session storagensa. Ne eivät jaa dataa keskenään. Local storage sen sijaan on jaettu kaikkien saman sivuston välilehtien kesken samassa selaimessa.

Mihin sivustot käyttävät session storagea?

Edistymisen seuranta istunnon aikana

Monivaiheiset lomakkeet ja kassaprosessit käyttävät usein session storagea edistymisen säilyttämiseen, kun kävijä siirtyy vaiheesta toiseen. Jos hän palaa edelliseen vaiheeseen, hänen vastauksensa ovat yhä paikoillaan. Kun istunto päättyy, tuo tilapäinen data katoaa, mikä on juuri se, mitä esimerkiksi kassaprosessilta halutaan.

Käyttöliittymän tilapäinen tila

Onko sivupalkki auki, mikä välilehti on valittuna tai kuinka pitkälle kävijä on vierittänyt pitkää luetteloa: nämä ovat kaikki tilapäisiä tiloja, joita on järkevää säilyttää vierailun ajan mutta joilla ei ole arvoa, kun kävijä poistuu. Session storage hoitaa tämän siististi.

Arkaluonteisen kontekstin pitäminen lyhytaikaisena

Kaikessa, mikä liittyy käyttäjän senhetkiseen kontekstiin vierailun aikana, session storage on turvallisempi valinta kuin local storage, koska data siivoaa itsensä automaattisesti. Ei ole riskiä siitä, että arkaluonteinen konteksti jäisi selaimeen vierailun päätyttyä.

Milloin käyttää session storagea ja milloin local storagea

Valinta tiivistyy yhteen kysymykseen: pitääkö tämän datan säilyä nykyisen välilehti-istunnon yli? Jos pitää, local storage on oikea työkalu. Jos data on merkityksellistä vain nykyisen vierailun ajan eikä sen pidä siirtyä eteenpäin, session storage sopii paremmin.

Arkaluonteiselle datalle kumpikaan ei sovi. Salasanat, maksutiedot ja henkilötiedot tulee aina käsitellä palvelinpuolella asianmukaisella SSL-salauksella, eikä niitä koskaan tallenneta selaimeen. Jos haluat kokonaiskuvan kaikista selaimen tallennusvaihtoehdoista ja niiden vertailusta, lue selaimen tallennustyypit.

Usein kysytyt kysymykset

Tyhjeneekö session storage, kun selain suljetaan, vai vain kun välilehti suljetaan?

Session storage tyhjenee, kun kyseinen välilehti suljetaan. Jos kävijällä on useita välilehtiä auki ja hän sulkee yhden, vain sen välilehden session storage tyhjenee. Muut välilehdet säilyttävät omat session storagensa. Jos koko selain suljetaan, kaikkien välilehtien session storage pyyhitään, koska kaikki aktiiviset istunnot päättyvät silloin.

Voivatko kaksi saman sivuston välilehteä jakaa session storagen?

Ei. Session storage on eristetty välilehtikohtaisesti. Jos sama sivusto on auki kahdessa erillisessä välilehdessä, kummallakin välilehdellä on oma session storagensa, jota toinen välilehti ei voi lukea tai kirjoittaa. Tämä eroaa local storagesta, joka on jaettu kaikkien saman sivuston välilehtien kesken samassa selaimessa.

Onko session storage turvallisempi kuin local storage?

Se on hieman parempi arkaluonteiselle kontekstille, koska data tyhjenee automaattisesti välilehden sulkeutuessa. Siihen pääsee kuitenkin edelleen käsiksi mikä tahansa sivulla toimiva skripti, joten se ei sovi salasanoille, henkilötiedoille tai maksutiedoille. Automaattinen siivous lyhentää altistumisaikaa, mutta samat perusturvallisuussäännöt pätevät. Arkaluonteinen data kuuluu palvelimelle, ei selaimeen.

Mitä session storagelle tapahtuu, jos kävijä päivittää sivun?

Sivun päivittäminen ei tyhjennä session storagea. Data säilyy sivun uudelleenlatausten läpi, kunhan välilehti pysyy auki. Siksi session storage on hyödyllinen tilan säilyttämiseen päivitysten yli saman vierailun aikana, esimerkiksi osittain täytetyn lomakkeen pitämiseen, ilman että data siirtyy eteenpäin kävijän poistuttua.

Kuinka paljon dataa session storageen mahtuu?

Session storagen kapasiteetti on suunnilleen sama kuin local storagen, noin 5 - 10 megatavua välilehteä kohden selaimesta riippuen. Se riittää enemmän kuin hyvin käyttöliittymän tilapäisille tiloille ja kesken olevan lomakkeen datalle. Suuremmille tietojoukoille tai tiedostoille IndexedDB sopii paremmin.

Täytyykö minun määrittää session storagea sivustollani?

Ei, jos käytät sivustonrakentajaa. Alusta käyttää session storagea sisäisesti esimerkiksi lomakkeen tilan ja istunnon aikaisten asetusten hallintaan. Se toimii taustalla ilman, että sinun tarvitsee määrittää mitään. WEMASY-sivustonrakentajalla alusta hoitaa kaikki selaimen tallennukseen liittyvät päätökset automaattisesti, joten kävijäsi saavat sujuvan kokemuksen ilman mitään määrityksiä.

Ota se heti käyttöön
omalla verkkosivullasi.

Aloita ilmaiseksi WEMASYlla ja rakenna sivusi muutamassa minuutissa.