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.