Hvordan opdateres en webside i Chrome (Ctrl + F5-analog) på en enhed uden menuknap?
On december 1, 2020 by adminJeg har en Nexus 7 Android-enhed med 4.2.2 og Chrome-browser.
Hvordan kan man udføre en dyb opdatering af en webside – analog til Ctrl + F5 genvejstast på desktops?
Please , bemærk, at enheden ikke har en menuknap.
Ifølge det eneste relaterede spørgsmål, jeg har fundet her , er løsningen for at rydde browserens cache fuldstændigt. Jeg foretrækker en mere praktisk og elegant løsning.
Kommentarer
- Hvordan er menuknappen (eller manglen derpå) relateret ?
- @ eldarerath dette, jeg så noget indlæg på nettet, foreslog at trykke på knappen Opdater værktøj, mens jeg holdt Menu-tasten nede.
- Ah, interessant. Jeg havde ‘ ikke hørt det før.
- Dette spørgsmål har meget bedre svar på StackOverflow (som viser, hvordan overopdeling af samfundet ikke hjælper ‘; Android er tæt nok på at programmere, at det ‘ ikke er værd at lave et separat sted til; Kemi vs. Matematik – sikkert.)
Svar
Bypassering pr. Webstedscache:
Dette kræver en simpel javascript-kode, der skal køres i adresselinjen for at omgå cachen og hente indhold fra serveren i stedet for browserens cache. I henhold til denne MDN-side om Force genindlæser den aktuelle side fra serveren ,
javascript:location.reload(true)
Indtast ovenstående kode i browserens adresselinje, og tryk på Enter-tasten. Dette henter alt indholdet fra serveren i stedet for at vælge de elementer, der er cachelagret i din browser (og dermed omgå browserens cache).
Omgå cache-data for alle websteder (Global cache)
Ovenstående javascript fungerer kun for et bestemt websted, som du lige har åbnet. For at rydde al webstedscache skal du bruge de globale cachedata til browseren. Du finder dette under,
Settings > Privacy > CLEAR BROWSING DATA
Marker afkrydsningsfeltet “Cache” (og andre muligheder som browserdata, cookies, adgangskode osv., Hvis du vil) og vælg “Ryd “.
Bemærk: Mens Ctrl
+ F5
får browseren til at smide cachen ud og anmode om nyt indhold fra serveren, serveren ignorerer muligvis no-cache
header og server en cachet side på serversiden. Således kan selv Ctrl
+ F5
muligvis returnere en gammel version af siden, hvis serveren ignorerer header uden cache.
Inkognitotilstand:
Gennemse gennem inkognitotilstand deaktiverer historie og cache. Så du kan besøge ethvert websted i inkognitotilstand for at anmode om nyt indhold hver gang.
For mere interessant diskussion om hvad Ctrl
+ F5
eller tvangsopdatering gør,
Læs dette SO-indlæg, Hvilke anmodninger gør browsere “” F5 “og” Ctrl + F5 ”Opdateringer genereres?
Kommentarer
- Denne fungerer ikke længere i Chrome 47 .
- Selv efter at have ryddet browserdata, skete den dybe opdatering ikke. Jeg var nødt til at dræbe og genstarte Chrome i min Android-telefon for at tvinge den til at komme fra cachen (Som en eftertanke ser det ud til, at selv efter at du har ryddet cache på disken (formodentlig), er cachen i hukommelsen stadig rundt. Killing Chrome tørrer også hukommelsescachen.) [PS: Af ” disk ” Jeg mener den permanente ikke-flygtige lagring aka flashhukommelse.]
Svar
Jeg fandt jeg t !!!!!!
På venstre side af URLen er der et info-ikon (i) eller et lås-ikon. Klik på ikonet og derefter på [webstedskonfiguration].
Du finder et papirkurvikon for at rydde cachen for det aktuelle sted og alternativt en “gendannelsesindstillinger” -knap.
Arbejde med Android Chrome 71.
Kommentarer
- Virker ikke på min S9 +, Chrome build 73.0.3683.90. Jeg ‘ har ramt Clear & Nulstil indstilling mindst 15 gange på en side, jeg styrer (så jeg ved, hvad koden gør ret godt ). Imidlertid er JS, der kører på den side, jeg indlæser, stadig en gammel version.
- Nå, det fungerede perfekt på min S9, så jeg antager, at der sker noget specifikt for din sag! Kan du venligst plyndre det yderligere?
- Jeg ‘ har nu prøvet dette på to forskellige enheder nu, en ved hjælp af udviklertilstand (min telefon, da jeg ‘ ma-udvikler) og en ven ‘ s. Jeg har også prøvet en tablet; nej derned +.Så godt, jeg prøvede endda på min virksomheds iPhone ved hjælp af Chrome, og det samme problem er der. Så fra mit perspektiv ser du ud til at være heldig, mere end jeg ser ud til at have flere fejlbehæftede enheder til min rådighed.
- Selvfølgelig er det virkelige problem Chrome ‘ s / Android ‘ funky opførsel og hyper-aggressiv caching. Det er som en inkognitotilstand, der ikke fungerer (hvis man taler om … som heller ikke fungerede ordentligt …)
- Bare kontrolleret, at iPhones Chrome ikke har denne mulighed, du siger, så jeg mener, at vi ikke taler om den samme ting: Hvad mere er der ingen “klar & nulstilling” i min Android Chrome. For at tredoble det, har jeg testet mit forslag til en Xiaomi A1, der fungerer OK (bemærk, at den viser den lokale cache-størrelse på siden i KB). Måske skal du lukke fanen (eller prøve at dræbe krom). Ellers spekulerer jeg på, hvad “papirkurven” på et specifikt sted forventes at gøre …?
Svar
På min Samsung-tablet, der gennemser med Chrome, skal du skrive dette i adresselinjen:
javascript:location.reload(true)
Det skal udløse en hård genindlæsning ved hjælp af Javascript. Nu behøver jeg ikke vente i flere dage for at observere resultaterne af en ændring af kode, jeg foretog. Et nyt problem er, at det ikke er min favorit ting at skrive på en tablet.
I stedet for at skrive ovenstående kommando forsøgte jeg også at skifte til desktop-tilstand og derefter tilbage. Det opdaterede ikke dybt.
Svar
Jeg fik ikke nogen af disse løsninger til at fungere. Jeg har dog fundet en fungerende løsning.
Find først ud af css url. I mit tilfælde så det sådan ud:
/min/assets/css/style.min.css
Skriv det i adressefeltet, men tilføj også en GET-variabel til den:
/min/assets/css/style.min.css?hello
Forhåbentlig GET-variablen accepteres. Fordi det “er en ny url, tvinger det css til at genindlæse. Gå nu tilbage til webstedet, og css skulle have været genindlæst.
Svar
Jeg finder bare en mere elegant løsning. I menuen på websiden skal du bede om desktop-version af hjemmesiden. Det trækker data fra serveren, og siden genindlæses. Derefter kan du vende tilbage til mobilversionen igen.
Kommentarer
- Ikke alle websteder tilbyder mobil- / desktopversioner.
- Den aktuelle version af Chrome på Android har indstillingen Anmod om desktop-site Uanset om alle websteder imødekommer den anmodning eller ej, er det ‘ i mange tilfælde stadig en effektiv mulighed. Hvis du prøver dette og finder det, ‘ t arbejde er langt nemmere og hurtigere end at rydde caches i indstillinger.
Svar
Jeg har brug for en måde at rydde den aktuelle cache eller al cache fra det samme oprindelsesdomæne via javascript, så jeg kan sikre mig, at opdateringen opdateres af min webapp ankommer uden fejl.
Jeg havde heller ikke nogen succes med midlertidigt at ændre cache-metatags i html-overskriften.
Kun på skrivebordet og ikke automatisk:
ctrl + R
bruges til at tvinge genindlæsning til at rydde cachen.
Nu skal du trykke på
ctrl + shift + R or shift + F5
Det ser ud til, at krom gjorde det vanskeligt at rydde cachen.
De gør sandsynligvis dette for at snyde i benchmarks for browserspeed. VW Style.
Jeg skrev min egen løsning forceReload () -funktion, der fungerer på Windows Chrome og Android Chrome og chrom:
window.forceReload = function(){ if( !window.fetch)return document.location.reload( true); var els = document.getElementsByTagName( "*"); for( var i = 0; i < els.length; i++){ var src = ""; if( els[i].tagName == "A")continue; if( !src && els[i].src)src = els[i].getAttribute( "src"); if( !src && els[i].href)src = els[i].getAttribute( "href"); if( !src)continue; fetch( src, { cache: "reload"}); } return document.location.reload( true); };
Dette funktionen vil kun genindlæse indhold, der er indlæst på den aktuelle side, du kan udløse det en gang på hver af dine klienter, efter at nye opdateringer er på serveren, eller blot tilføje en fungerende opdateringsknap til din app.
Kommentarer
- Tak for din deling af koden. Hentning synes stadig at være eksperimentel API, så sandsynligvis kan en anden eksperimentel Cache API også være praktisk.
Svar
I brug en Ny inkognitofane . Det fungerer også på andre enheder og browsere. Det undgår normalt den lokale cache.
Bemærk, at private sessioner stadig kan betragtes som samtidige, så du bliver muligvis nødt til at lukke alle inkognitofaner for at rydde deres cache.
Svar
Træk ned på en side for at genindlæse den, den kommer nkorporeret til krom til smartphones, for at se flere tricks som den afkrydsningsfelt dette link, hvor jeg fandt løsningen på dit problem
Kommentarer
- Mens denne funktion senest er føjet til Chrome broswers ( ver.41 ovenfor) vil det ikke være tilgængeligt i de ældre versioner. Så denne funktion fungerer måske eller måske ikke. Og vigtigere, dette genindlæser bare siden på den normale måde, men OP beder om en hård opdatering.
- Det ‘ er ikke angivet, hvis den anmodede løsning er under et synspunkt for android eller kodning
- Kunne ikke ‘ forstår ikke hvad du mener med det. Men dette svar ‘ overbeviser mig ikke om, at det vil give en løsning på OP ‘ s problem.
- Dette ” svar ” fortæller bogstaveligt talt folk, at du kan udføre en regelmæssig opdatering ved at trække ned på siden . OP ‘ s spørgsmål drejede sig imidlertid om at lave et ” hård opdatering “, CTRL + F5 svarende til pcen.
Svar
Til venstre for det webadressevindue, du besøger, er næsten cirkulær pil.
Kommentarer
- Jeg tror ikke ‘ ikke tror på, at dette gør en dyb opdatering som Stan er beder om.
Skriv et svar