Tôi có thể buộc làm mới bộ đệm trong Safari chạy trên iOS không?


56

Hầu hết các trình duyệt máy tính để bàn Windows sử dụng kết hợp bàn phím Ctrl+ F5để buộc làm mới bộ đệm bộ đệm cụ thể của trang. Các trình duyệt dựa trên Mac OS X có xu hướng sử dụng Command+ R. Có làm mới bộ đệm tương đương cho một trang trong Safari chạy trên iOS không?

Tôi nhận ra rằng tôi có thể xóa bộ nhớ cache của trình duyệt theo cách thủ công, nhưng tôi chỉ muốn làm mới cho trang tôi hiện đang xem.


Đây có phải là những gì bạn đang nghĩ đến? apple.stackexchange.com/questions/73153/...
bassplayer7

@ bassplayer7 nó gần nhưng không hoàn toàn giống nhau. Command + R chỉ làm mới các tài nguyên cho trang cụ thể mà bạn đang xử lý. Có nghĩa là JavaScript được liên kết bên ngoài từ CDN cũng sẽ được làm mới. Điều này không bao gồm các tài nguyên không được tham chiếu. Đó là một điều khiển chi tiết rất tốt dành cho trình duyệt máy tính để bàn và siêu tiện dụng để phát triển web.
ahsteele

Có ý nghĩa. Là một nhà phát triển web, tôi hiểu quan điểm của bạn là tiện lợi. Tôi giả sử rằng bạn đã làm, nhưng tôi không thể không đề cập đến nó - Tôi sử dụng ứng dụng này từ Adobe cho công việc di động của mình. Và, tôi tin rằng việc khởi động lại Safari - cồng kềnh như hiện tại - ít nhất là một sự làm mới sau đó là nút. Mặc dù vậy, tôi đã không nhầm lẫn với nó đủ để biết chính xác những gì nó được làm mới.
bassplayer7

Việc nhấn nút refresh trong thanh địa chỉ cũng không làm mới nội dung được lưu trong bộ nhớ cache?
Gerry

Câu trả lời:


36

Buộc thoát không hoạt động đáng tin cậy đối với tôi trong iOS 8. Điều gì đã làm là sử dụng chế độ riêng tư để thử nghiệm:

  1. Mở trang ở chế độ riêng tư (và đánh dấu trang để bạn có thể mở sau).
  2. Khi bạn cần làm mới, hãy đóng "tab" trình duyệt (bạn có thể ở chế độ Safari và chế độ riêng tư).
  3. Mở lại trang (sử dụng dấu trang bạn đã tạo ở bước 1).

1
Không phải là một giải pháp tuyệt vời, nhưng nó dường như là thứ tốt nhất mà iOS mang lại cho chúng ta để làm việc.
Brendan

2
Làm cách nào để đến "chế độ riêng tư"?
linuxdan

Trong Mobile Safari: chạm vào biểu tượng hai hình vuông, sẽ hiển thị cho bạn tất cả các tab đang mở và hiển thị nút chế độ "Riêng tư" ở phía dưới bên trái. support.apple.com/en-gb/HT203036
Matt Sephton

Kể từ iOS 13.1.3, điều này không còn hoạt động nữa.
timbo

11

Nếu điện thoại của bạn được kết nối với máy tính / máy tính xách tay Apple, với các công cụ dành cho nhà phát triển Safari mở (và cửa sổ hoạt động), bạn có thể nhấn:

Command Key + Option + R


Tôi cá là nó cũng hoạt động nếu bạn sử dụng bàn phím Bluetooth với điện thoại.
rinogo

@rinogo Tiêu cực. Tôi sử dụng bàn phím apple Magic trên ipad pro của mình và "cmd + shift + r" không có gì trong trình duyệt safari.
danielson317

7

Nếu bạn buộc thoát Safari (nhấp vào nút home, sau đó nhấp đúp vào nút home, nhấn và giữ biểu tượng Safari trong thanh đa nhiệm, sau đó nhấn vào dấu chấm màu đỏ), có vẻ như Safari sẽ xóa bộ nhớ cache. Nhưng điều này sẽ xóa toàn bộ bộ đệm, không chỉ một trang.

Bạn cũng có thể xóa cookie và dữ liệu Safari trong ứng dụng Cài đặt. Trong phần Nâng cao, bạn có thể xóa dữ liệu khỏi các trang web riêng lẻ, có thể hoạt động nếu bạn biết tất cả các trang web được liên kết với trang web bạn muốn xóa.


1
Điều này không hiệu quả với tôi (iOs 7.0.4).
Nabil Kadimi

3
Với iOS 7, bạn đưa ứng dụng lên trên từ danh sách gần đây / đa nhiệm để buộc thoát ứng dụng.
hotpaw2

1
iOS 7.1 tại đây, tôi đã kiểm tra thông qua các công cụ dành cho nhà phát triển từ xa của Safari và dường như các tài nguyên thực sự không được lưu trong bộ nhớ cache sau khi thoát khỏi ứng dụng (Timelines> Network request)
fregante

5

Bạn có thể buộc thiết bị dừng các bộ đệm ẩn bằng cách kết nối thiết bị với máy tính bằng cáp và bật chế độ nhà phát triển Safari.

  • Bật Trình kiểm tra web trên thiết bị di động:
    Cài đặt> Safari> Nâng cao> Trình theo dõi web
  • Bật công cụ Dev trong Safari trên macOS:
    Safari> Tùy chọn> tab Nâng cao> Hiển thị Phát triển trong thanh menu
  • Kết nối thiết bị với máy tính
  • Mở bảng điều khiển công cụ dành cho thiết bị từ Safari trên máy tính:
    Phát triển> Ví dụ iPhone> example.com/page
  • Để tắt bộ nhớ đệm, hãy chuyển đến tab Mạng và đảm bảo biểu tượng nhỏ cho "không có bộ đệm" có màu xanh lam (trông giống như một hình trụ có hình chữ thập xuyên qua nó).
  • Bây giờ bạn sẽ có thể chỉ cần làm mới bất cứ lúc nào trên thiết bị iOS và bạn sẽ nhận được một phiên bản cập nhật không lưu trong bộ nhớ cache!

Nếu bạn là nhà phát triển web thì đây là cách lý tưởng để làm điều đó bởi vì bây giờ bạn có quyền truy cập vào bảng công cụ dev đầy đủ cực kỳ hữu ích. Và bạn không phải tiếp tục lặp lại một quy trình gây phiền nhiễu nếu bạn cần có phiên bản mới mọi lúc, không chỉ xóa bộ nhớ cache một lần.

Nếu bạn chỉ là người dùng chung đang cố gắng xóa bộ nhớ cache của họ, bạn có thể muốn sử dụng một trong các phương pháp khác tại đây.


Cập nhật: Bây giờ bạn có thể kết nối với thiết bị qua WiFi. Có thể vẫn yêu cầu thiết lập ban đầu với cáp, nhưng bạn chắc chắn có thể kết nối mà không cần nó sau đó.
Phát triển> Ví dụ iPhone> Kết nối qua mạng


1

Xóa dữ liệu được lưu trong bộ nhớ cache cho một trang web bằng cách đi tới Cài đặt > Safari > Nâng cao > Dữ liệu trang web > Hiển thị tất cả các trang web .

Chạm vào Chỉnh sửa ở dưới cùng bên phải của màn hình, sau đó cuộn trong danh sách hoặc tìm kiếm với trường tìm kiếm để tìm trang web bạn muốn xóa). Bấm vào màu đỏ - biểu tượng bên cạnh địa chỉ trang web, và sau đó khai thác Xóa nút đó xuất hiện.

Quay trở lại Safari và tải lại trang và tất cả các tạo phẩm của trang sẽ được tải lại.


Điều này đã không làm việc. Các mục không thể nhấp được trên iPad của tôi (iOS 12).
cheesus SO ngừng làm hại Monica

0

Trên Safari kích hoạt Chế độ nhà phát triển. Sau đó, bạn có thể sử dụng kết hợp sau để xóa Cache:

Option-Key + Command-Mac-Key + E 

Tôi giả sử rằng điều này sẽ chỉ làm giảm bộ nhớ cache của trang web bạn đang truy cập tại thời điểm đó.


Thật không may, hướng dẫn của bạn chỉ áp dụng cho phiên bản Safari trên máy tính để bàn. Câu hỏi là về phiên bản iOS.
calum_b

-1

Nhấn đúp vào nút refresh.


7
Điều này có làm việc cho bất cứ ai? Nhấn đúp chỉ dừng làm mới mà tôi đã bắt đầu với lần nhấn đầu tiên.
Brendan

Vâng, đây là điều duy nhất thực sự làm việc cho tôi. Không chắc chắn nếu điều này chỉ đá safari trong ass nhưng nó hoạt động.
Ben Rabidou

-3

bạn có thể thêm số ngẫu nhiên vào tập lệnh hoặc liên kết src như:

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

điều này buộc Safari phải tải lại tệp, vì nó nghĩ rằng đó là một tệp khác.


4
Làm thế nào để điều này làm việc từ phía người dùng?
nohillside

1
Nối một tham số ngẫu nhiên vào URL ở trên cùng...?rand=15
Aaron Digulla

Điều này được gọi là "bộ nhớ cache", khiến cho chuỗi URL là duy nhất khi trình duyệt nhìn thấy nó. Vì vậy, nó sẽ không bao giờ tìm thấy URL đó trong bộ đệm của nó. (Và phía máy chủ chỉ đơn giản bỏ qua GEThoàn toàn tham số.) Nhưng, đây thực sự không giống với những gì OP đang yêu cầu.
Mike Robinson

@AaronDigulla Điều này sẽ không hoạt động đối với các tài nguyên được liên kết như các tệp và hình ảnh CSS.
Flimm

-3

Nhấn nút làm mới. Iphone 6


6
Điều đó xuất hiện một menu với "trang web yêu cầu máy tính để bàn" trong Điện thoại 7.
Flimm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.