2012-04-02 29 views
13

Tôi đang thử tính năng hiển thị trước trong chrome, nhưng khi tôi kiểm tra mạng, tôi có thể thấy yêu cầu bị hủy bỏ cho bất kỳ liên kết nào.Tính năng Mở rộng của Chrome bị hủy mỗi lần

chrome developer console

Tôi đang sử dụng cú pháp sau:

<link rel="prerender" href="http://example.org/index.html"> 

Tôi đã thử các bản demo trực tiếp tại http://prerender-test.appspot.com/ và nhận được kết quả tương tự. Tại sao vậy?

Cập nhật (từ https://developers.google.com/chrome/whitepapers/prerender):

Trong một số trường hợp trong khi cách hiển thị trước một trang web Chrome có thể chạy vào một tình huống mà có thể dẫn đến hành vi người dùng có thể nhìn thấy đó là không chính xác. Trong những trường hợp đó, đầu tiên sẽ bị hủy bỏ âm thầm. Một số trường hợp này bao gồm:

  • Lưu ý: Đây không phải là danh sách đầy đủ. Cập nhật lần cuối 11/10/11.

    1. URL khởi tạo một tải
    2. HTMLAudio hoặc video trong trang
    3. POST, PUT, và DELETE XMLHttpRequests
    4. HTTP Authentication
    5. trang HTTPS
    6. Các trang kích hoạt cảnh báo phần mềm độc hại
    7. Tạo cửa sổ bật lên/cửa sổ
    8. Phát hiện tài nguyên cao utilizati trên
    9. Công cụ dành cho nhà phát triển mở
    10. Các plugin như Flash sẽ được khởi tạo lại cho đến khi người dùng thực sự truy cập trang được hiển thị trước.

Nhưng câu hỏi là khi thể tôi sử dụng tính năng này?

+0

Liệu các bản demo nói rằng bạn đã PreRender kích hoạt? –

+0

chắc chắn, nếu không nó sẽ không cho phép bạn nhập một liên kết –

+0

Bản trình diễn hoạt động với tôi. Bạn đã thử trên các máy khác nhau chưa? –

Trả lời

17

Trong trường hợp này, có vẻ như các yêu cầu hiển thị trước đang bị hủy vì bạn đã mở Công cụ dành cho nhà phát triển.

Nếu bạn muốn xem thêm thông tin về lý do yêu cầu bị hủy, hãy sao chép và dán chrome: // net-internals/# prerender vào thanh địa chỉ của bạn và nhấn enter.

Hiển thị trước phải hoạt động trong hầu hết các trường hợp mà không phải là được liệt kê trong danh sách lý do hủy mà bạn đã dán từ báo cáo chính thức.

+2

Tại sao tính năng mở trước bị tắt nếu Công cụ dành cho nhà phát triển mở? –

+6

Điều này dẫn đến một loại tình huống bất lợi - làm cách nào để tôi biết liệu tìm nạp trước có hoạt động khi các công cụ nhà phát triển bị đóng không? Tài nguyên được tìm nạp trước có thực sự tìm nạp trước nếu không có ai đang xem không? Đức tin, tôi cho là vậy. – drewww

+0

Nếu công cụ nhà phát triển không làm việc thì tôi khuyên bạn nên sử dụng thứ gì đó bên ngoài trình duyệt của bạn (như Fiddler) để kiểm tra xem tìm nạp trước của bạn có đang hoạt động không. –

1

PreRender, Prefetching & Developer Tools:

PreRender Và Prefetching Liên kết (Đó không phải là những tính năng cùng một lúc tất cả) bị vô hiệu hóa khi các nhà phát triển công cụ này là mở (trong hầu hết các trình duyệt: IE, Chrome, Firefox) bởi vì họ Cả hai đều dựa trên "Cache" - Trên thực tế "prefetch" là hoàn toàn dựa trên Cache và sub-resources Vì đó là những gì nó làm - nó tải nội dung Future (Top Layer only) vào cache nên nó sẽ có sẵn khi điều hướng đến trang tiếp theo. "tiền thưởng" sử dụng bộ nhớ cache nhưng Đồng thời cũng cho toàn bộ Trang vào "tab ẩn" trong nền.

Khi bật Công cụ tìm kiếm, trang hiện tại không phải là "Caching" vì hầu hết các trình duyệt đều tắt bộ nhớ cache theo mặc định khi công cụ dev mở.

Để xem kết xuất trước đang hoạt động và để kiểm tra nó Phương pháp tốt nhất là sử dụng Trình quản lý tác vụ - Bạn sẽ có thể thấy quy trình đầu hàng Kicking khi trang hiện tại được tải.

Tất cả bạn cần biết về PreRender/Prefetching Tóm tắt: HERE

Các vấn đề liên quan