Czy mogę wymusić odświeżenie pamięci podręcznej w przeglądarce Safari uruchomionej na iOS?


56

Większość przeglądarek stacjonarnych Windows używa kombinacji klawiszy Ctrl+, F5aby wymusić odświeżenie pamięci podręcznej specyficzne dla strony. Przeglądarki Mac OS X zwykle używają Command+ R. Czy istnieje odpowiednik odświeżenia pamięci podręcznej dla jednej strony w przeglądarce Safari uruchomionej na iOS?

Zdaję sobie sprawę, że mogę ręcznie wyczyścić pamięć podręczną przeglądarki, ale wolę odświeżyć tylko stronę, którą aktualnie przeglądam.



@ bassplayer7 jest blisko, ale nie do końca taki sam. Command + R odświeża tylko zasoby dla konkretnej strony, z którą masz do czynienia. Oznacza to, że zewnętrzny link JavaScript z CDN również zostałby odświeżony. Nie obejmuje to zasobów, do których nie ma odniesienia. Jest to bardzo drobnoziarnista kontrola zapewniana przeglądarkom komputerowym i jest bardzo przydatna do tworzenia stron internetowych.
ahsteele

Ma sens. Jako programista internetowy rozumiem, że jest to dla ciebie wygodne. Zakładam, że już to robisz, ale nie mogę nie wspomnieć o tym - używam tej aplikacji Adobe do mojej pracy mobilnej. I wierzę, że ponowne uruchomienie Safari - choć uciążliwe - to przynajmniej odświeżenie niż przycisk. Jednak nie zawiodłem się na tyle, aby dokładnie wiedzieć, co to jest odświeżające.
bassplayer7

Czy naciśnięcie przycisku odświeżania na pasku adresu również nie odświeża zawartości pamięci podręcznej?
Gerry,

Odpowiedzi:


36

Wymuszone zamknięcie nie działało dla mnie niezawodnie w iOS 8. Co zrobiłem, używając trybu prywatnego do testowania:

  1. Otwórz stronę w trybie prywatnym (i dodaj ją do zakładek, aby móc ją później otworzyć).
  2. Gdy musisz odświeżyć, zamknij „kartę” przeglądarki (możesz pozostać w trybie Safari i prywatnym).
  3. Otwórz stronę ponownie (użyj zakładki utworzonej w kroku 1).

1
Nie jest to świetne rozwiązanie, ale wydaje się, że najlepsze jest to, co daje nam iOS do pracy.
Brendan

2
Jak przejść do „trybu prywatnego”?
linuxdan

W Mobile Safari: dotknij ikonę dwóch kwadratów, która pokaże wszystkie otwarte zakładki i odsłoni przycisk trybu prywatnego w lewym dolnym rogu. support.apple.com/en-gb/HT203036
Matt Sephton

Od wersji iOS 13.1.3 to już nie działa.
timbo

11

Jeśli telefon jest podłączony do komputera / laptopa Apple, przy otwartym narzędziu programisty Safari (i aktywnym oknie) możesz nacisnąć:

Command Key + Option + R


Założę się, że to działa, jeśli używasz również klawiatury Bluetooth z telefonem.
rinogo

@rinogo Negative. Używam magicznej klawiatury Apple na moim iPadzie Pro, a „cmd + shift + r” nic nie robi w przeglądarce Safari.
danielson317

7

Jeśli wymusisz zamknięcie przeglądarki Safari (kliknij przycisk strony głównej, a następnie kliknij dwukrotnie przycisk strony głównej, naciśnij i przytrzymaj ikonę Safari na pasku wielozadaniowości, a następnie dotknij czerwonej kropki), wygląda na to, że Safari wyczyści pamięć podręczną. Spowoduje to jednak wyczyszczenie całej pamięci podręcznej, a nie tylko jednej strony.

Możesz także wyczyścić pliki cookie i dane Safari w aplikacji Ustawienia. W sekcji Zaawansowane możesz usunąć dane z poszczególnych witryn, co może działać, jeśli znasz wszystkie witryny powiązane ze stroną, którą chcesz opróżnić.


1
To nie działa dla mnie (iOS 7.0.4).
Nabil Kadimi

3
W systemie iOS 7 podrzucasz aplikację w górę z listy ostatnich / wielozadaniowości, aby ją wymusić.
hotpaw2

1
Tutaj iOS 7.1, sprawdziłem za pomocą narzędzi zdalnego programisty Safari i wygląda na to, że zasoby nie są buforowane po wymuszonym zamknięciu aplikacji (Oś czasu> Żądania sieciowe)
fregante

5

Możesz zmusić urządzenie do zaprzestania buforowania plików, podłączając je do komputera kablem i włączając tryb programisty Safari.

  • Włącz Web Inspector na urządzeniu mobilnym:
    Ustawienia> Safari> Zaawansowane> Web Inspector
  • Włącz narzędzia deweloperskie w Safari na macOS:
    Safari> Preferencje> karta Zaawansowane> Pokaż rozwijanie na pasku menu
  • Podłącz urządzenie do komputera
  • Otwórz panel narzędzi programistycznych dla urządzenia z Safari na komputerze:
    Opracuj> Przykład iPhone'a> example.com/page
  • Aby wyłączyć buforowanie, przejdź do karty Sieć i upewnij się, że mała ikona „brak pamięci podręcznej” jest niebieska (wygląda jak cylinder z przekrojem przez nią).
  • Teraz powinieneś być w stanie po prostu wcisnąć przycisk odświeżania w dowolnym momencie na urządzeniu z systemem iOS, a otrzymasz aktualną wersję bez pamięci podręcznej!

Jeśli jesteś programistą, jest to idealny sposób, aby to zrobić, ponieważ masz teraz dostęp do niezwykle przydatnego panelu narzędzi pełnego dewelopera. I nie musisz powtarzać irytującego procesu, jeśli musisz cały czas uzyskiwać nową wersję, a nie tylko raz wyczyścić pamięć podręczną.

Jeśli jesteś zwykłym użytkownikiem próbującym wyczyścić pamięć podręczną, możesz użyć jednej z innych metod tutaj.


Aktualizacja: możesz teraz połączyć się z urządzeniem przez WiFi. Nadal może wymagać początkowej konfiguracji za pomocą kabla, ale po tym można zdecydowanie połączyć się bez niego.
Rozwiń> Przykład iPhone'a> Połącz przez sieć


1

Usuń buforowane dane dla pojedynczej witryny, przechodząc do Ustawienia > Safari > Zaawansowane > Dane witryny > Pokaż wszystkie witryny .

Stuknij Edytuj w prawym dolnym rogu ekranu, a następnie przewiń listę lub wyszukaj za pomocą pola wyszukiwania, aby znaleźć witrynę, którą chcesz wyczyścić). Stuknij czerwony - ikonę obok adresu witryny, a następnie dotknij Usuń przycisk który się pojawi.

Wróć do Safari i ponownie załaduj stronę, a wszystkie artefakty witryny zostaną ponownie załadowane.


To nie zadziałało. Elementy nie są klikalne na moim iPadzie (iOS 12).
ser SO przestań krzywdzić Monikę

0

W przeglądarce Safari włącz tryb programisty. Następnie możesz użyć następującej kombinacji, aby wyczyścić pamięć podręczną:

Option-Key + Command-Mac-Key + E 

Zakładam, że spowoduje to jedynie usunięcie pamięci podręcznej witryny, w której się znajdujesz.


Niestety instrukcje dotyczą tylko wersji Safari na komputer. Pytanie dotyczyło wersji iOS.
calum_b

-1

Naciśnij dwukrotnie przycisk odświeżania.


7
Czy to działa dla kogoś? Dwukrotne dotknięcie po prostu zatrzymuje odświeżanie, które rozpocząłem przy pierwszym dotknięciu.
Brendan

Tak, to była jedyna rzecz, która faktycznie działała dla mnie. Nie jestem pewien, czy to po prostu kopie safari w tyłek, ale działa.
Ben Rabidou

-3

możesz dodać losową liczbę dostać się do skryptu lub link src jak:

<link rel="stylesheet" href="css/main.css?rand=<?=$rand;?>" type="text/css" /> <script type="text/javascript" src="js/main.js?rand=<?=$rand;?>"></script>

zmusza to Safari do ponownego załadowania pliku, ponieważ uważa, że ​​jest to inny plik.


4
Jak to działa ze strony użytkownika?
nohillside

1
Dodaj losowy parametr do adresu URL u góry...?rand=15
Aaron Digulla

Nazywa się to „pomijaniem pamięci podręcznej”, co powoduje, że ciąg adresu URL jest unikalny, gdy przeglądarka go widzi. Dlatego nigdy nie znajdzie tego adresu URL w pamięci podręcznej. (A strona hosta po prostu całkowicie ignoruje GETparametr.) Ale tak naprawdę nie jest to to samo, o co prosi OP.
Mike Robinson

@AaronDigulla Nie działa to w przypadku połączonych zasobów, takich jak pliki CSS i obrazy.
Flimm

-3

Naciśnij i przytrzymaj przycisk odświeżania. iphone 6


6
To wywołuje menu z „poproś o stronę na pulpicie” w telefonie 7.
Flimm
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.