Gỡ lỗi dịch vụ nền

Sofia Emelianova
Sofia Emelianova

Phần Dịch vụ nền của Công cụ của Chrome cho nhà phát triển là tập hợp các công cụ dành cho API JavaScript nhằm cho phép trang web của bạn gửi và nhận bản cập nhật ngay cả khi người dùng chưa mở trang web của bạn. Dịch vụ nền có chức năng tương tự như quy trình nền.

Phần Dịch vụ nền cho phép bạn gỡ lỗi các dịch vụ nền sau:

Công cụ của Chrome cho nhà phát triển có thể ghi nhật ký các sự kiện tìm nạp, đồng bộ hoá và thông báo trong 3 ngày, ngay cả khi Công cụ cho nhà phát triển không mở. Việc này có thể giúp bạn đảm bảo rằng sự kiện đang được gửi và nhận như dự kiến.

Ngoài các sự kiện dịch vụ nền, Công cụ cho nhà phát triển có thể:

Tìm nạp ở chế độ nền

API Tìm nạp trong nền cho phép trình chạy dịch vụ tải các tài nguyên lớn (như phim hoặc podcast) xuống một cách đáng tin cậy dưới dạng dịch vụ nền. Cách ghi lại các sự kiện tìm nạp ở chế độ nền trong 3 ngày, ngay cả khi Công cụ cho nhà phát triển không mở:

  1. Ví dụ: mở Công cụ cho nhà phát triển trên trang minh hoạ này.
  2. Chuyển đến Ứng dụng > Dịch vụ nền > Tìm nạp nền rồi nhấp vào Ghi. Ghi.

    Ngăn Tìm nạp trong nền.

  3. Trên trang minh hoạ, hãy nhấp vào Lưu trữ thành phần trên thiết bị. Thao tác này sẽ kích hoạt một số hoạt động tìm nạp ở chế độ nền. Công cụ cho nhà phát triển ghi lại các sự kiện vào bảng.

    Nhật ký các sự kiện trong ngăn Tìm nạp trong nền.

  4. Nhấp vào một sự kiện để xem chi tiết về sự kiện đó trong không gian bên dưới bảng.

  5. Bạn có thể đóng Công cụ cho nhà phát triển và để bản ghi chạy trong tối đa 3 ngày. Để dừng ghi, hãy nhấp vào Dừng. Dừng.

Đồng bộ hóa dưới nền

API Đồng bộ hoá nền cho phép trình chạy dịch vụ ngoại tuyến gửi dữ liệu đến máy chủ sau khi máy chủ thiết lập lại kết nối Internet ổn định. Cách ghi lại các sự kiện đồng bộ hoá nền trong 3 ngày, ngay cả khi Công cụ cho nhà phát triển không mở:

  1. Ví dụ: mở Công cụ cho nhà phát triển trên trang minh hoạ này.
  2. Chuyển đến Ứng dụng > Dịch vụ nền > Đồng bộ hoá dưới nền rồi nhấp vào Ghi. Ghi.

    Ngăn Đồng bộ hoá trong nền.

  3. Trên trang minh hoạ, hãy nhấp vào Đăng ký đồng bộ hoá nền để đăng ký trình chạy dịch vụ tương ứng rồi nhấp vào Allow (Cho phép) khi được nhắc.

    Đăng ký trình chạy dịch vụ là hoạt động đồng bộ hóa dưới nền. Công cụ cho nhà phát triển ghi lại các sự kiện vào bảng.

    Nhật ký các sự kiện trong ngăn Đồng bộ hoá trong nền.

  4. Nhấp vào một sự kiện để xem chi tiết về sự kiện đó trong không gian bên dưới bảng.

  5. Bạn có thể đóng Công cụ cho nhà phát triển và để bản ghi chạy trong tối đa 3 ngày. Để dừng ghi, hãy nhấp vào Dừng. Dừng.

(Thử nghiệm) Giảm hoạt động theo dõi số trang không truy cập

Tính năng thử nghiệm giảm hoạt động theo dõi số trang không truy cập trong Chrome cho phép bạn xác định và xóa trạng thái của những trang web có vẻ thực hiện hoạt động theo dõi số trang không truy cập trên nhiều trang web bằng cách sử dụng kỹ thuật theo dõi số trang không truy cập. Bạn có thể buộc phải theo dõi các biện pháp giảm thiểu theo cách thủ công và xem danh sách những trang web có trạng thái đã bị xoá.

Cách buộc giảm thiểu hoạt động theo dõi:

  1. Chặn cookie của bên thứ ba trong Chrome. Chuyển đến và bật Trình đơn có biểu tượng ba dấu chấm. > Cài đặt > Bảo mật. Quyền riêng tư và bảo mật > Cookie và các dữ liệu trang web khác > Đã chọn nút chọn. Chặn cookie của bên thứ ba.
  2. Trong chrome://flags, hãy đặt thử nghiệm Giảm hoạt động theo dõi số trang không truy cập thành Bật khi xoá.
  3. Ví dụ: mở Công cụ cho nhà phát triển trên trang minh hoạ rồi chuyển đến Ứng dụng > Dịch vụ nền > Giảm hoạt động theo dõi số trang không truy cập.
  4. Trên trang minh hoạ, hãy nhấp vào một đường liên kết thoát rồi đợi (10 giây) để Chrome ghi lại phiên thoát. Thẻ Vấn đề cảnh báo cho bạn về quá trình xoá trạng thái sắp tới.
  5. Nhấp vào Buộc chạy để xoá trạng thái ngay lập tức.

Các tuỳ chọn giảm hoạt động theo dõi số trang không truy cập sẽ liệt kê một trạng thái bị xoá.

Thông báo

Sau khi trình chạy dịch vụ nhận được Thông báo đẩy từ máy chủ, trình chạy dịch vụ này sẽ sử dụng API Thông báo để hiển thị dữ liệu cho người dùng. Cách ghi lại Thông báo trong 3 ngày, ngay cả khi Công cụ cho nhà phát triển không mở:

  1. Ví dụ: mở Công cụ cho nhà phát triển trên trang minh hoạ này.
  2. Chuyển đến Ứng dụng > Dịch vụ nền > Thông báo rồi nhấp vào Ghi. Ghi.

    Ngăn Thông báo.

  3. Trên trang minh hoạ, hãy nhấp vào Lên lịch thông báoCho phép khi được nhắc.

  4. Chờ thông báo xuất hiện. Công cụ cho nhà phát triển ghi lại các sự kiện thông báo vào bảng.

    Nhật ký các sự kiện trong ngăn Thông báo.

  5. Nhấp vào một sự kiện để xem chi tiết về sự kiện đó trong không gian bên dưới bảng.

  6. Bạn có thể đóng Công cụ cho nhà phát triển và để bản ghi chạy trong tối đa 3 ngày. Để dừng ghi, hãy nhấp vào Dừng. Dừng.

Tải theo suy đoán

Tải theo suy đoán cho phép tải trang gần ngay lập tức dựa trên các quy tắc suy đoán mà bạn xác định. Điều này cho phép trang web của bạn tìm nạp trước và kết xuất trước hầu hết các trang được điều hướng đến.

Quá trình tìm nạp trước sẽ tìm nạp trước một tài nguyên và kết xuất trước vượt trội hơn và hiển thị toàn bộ trang trong quy trình kết xuất nền ẩn.

Bạn có thể gỡ lỗi các lượt tải theo suy đoán trong phần Ứng dụng > Dịch vụ nền > Tải theo suy đoán. Phần này có ba chế độ xem:

  • Tải theo suy đoán. Chứa trạng thái suy đoán cho trang hiện tại, URL hiện tại, các trang mà trang hiện tại cố gắng tải theo suy đoán và trạng thái của các trang đó.
  • Quy tắc. Chứa các bộ quy tắc trên trang hiện tại trong bảng điều khiển Phần tử và trạng thái chung của suy đoán.
  • Suy đoán. Chứa một bảng có thông tin về các lượt tải theo suy đoán và trạng thái của các lượt tải đó. Nếu một lần thử không thành công, bạn có thể nhấp vào lần thử đó trong bảng để xem thông tin chi tiết và lý do không thực hiện được.

Hãy thử gỡ lỗi tải theo suy đoán trên trang minh hoạ này:

  1. Mở Công cụ cho nhà phát triển trên trang rồi chuyển đến Ứng dụng > Dịch vụ nền > Tải theo suy đoán. Nếu bạn không thấy bất kỳ lượt tải suy đoán nào do trang khởi tạo, hãy tải lại.

    Các URL do trang này tải theo suy đoán, có hai lần thành công và một lần không thành công.

  2. Trang bắt đầu của bản minh hoạ kết xuất trước 2 trang nhưng không kết xuất trước được một trang. Nhấp vào Xem tất cả suy đoán.

  3. Trong mục Suy đoán, hãy chọn suy đoán có trạng thái Không đạt để xem phần Lý do không đạt kèm theo thông tin chi tiết ở dưới cùng.

    Đã chọn suy đoán không thành công.

    Trong trường hợp này, quá trình kết xuất trước không thành công vì không có trang /next3.html trên trang web.

  4. Mở phần Quy tắc, rồi nhấp vào Trạng thái để xem quy tắc được đặt ở dưới cùng. Nhấp vào đường liên kết Bộ quy tắc sẽ đưa bạn đến bảng điều khiển Phần tử và cho bạn biết nơi quy tắc suy đoán được xác định.

    Phần Rules (Quy tắc) có đường liên kết đến bộ Quy tắc.

Để biết hướng dẫn từng bước chi tiết hơn, hãy xem bài viết Gỡ lỗi cho các quy tắc suy đoán.

Thông báo đẩy

Để hiển thị thông báo đẩy cho người dùng, trước tiên, trình chạy dịch vụ phải sử dụng API PushMessage để nhận dữ liệu từ máy chủ. Khi đã sẵn sàng hiển thị thông báo, trình chạy dịch vụ sẽ sử dụng API Thông báo. Để ghi lại các thông báo đẩy trong 3 ngày, ngay cả khi DevTools không mở:

  1. Ví dụ: mở Công cụ cho nhà phát triển trên trang minh hoạ này.
  2. Chuyển đến Ứng dụng > Dịch vụ nền > Gửi tin nhắn đẩy rồi nhấp vào Ghi. Ghi.

    Ngăn Thông báo đẩy.

  3. Trên trang minh hoạ, hãy bật/tắt chế độ Bật thông báo đẩy, sau đó nhấp vào Cho phép khi được nhắc, nhập thông báo rồi gửi. Công cụ cho nhà phát triển ghi lại các sự kiện thông báo đẩy vào bảng.

    Nhật ký các sự kiện trong ngăn Thông báo đẩy.

  4. Nhấp vào một sự kiện để xem chi tiết về sự kiện đó trong không gian bên dưới bảng.

  5. Bạn có thể đóng Công cụ cho nhà phát triển và để bản ghi chạy trong tối đa 3 ngày. Để dừng ghi, hãy nhấp vào Dừng. Dừng.

API báo cáo

Một số lỗi chỉ xảy ra trong phiên bản chính thức. Bạn không bao giờ nhìn thấy chúng cục bộ hoặc trong quá trình phát triển vì người dùng, mạng và thiết bị thực thay đổi trò chơi.

Ví dụ: giả sử trang web mới của bạn hoạt động dựa trên phần mềm bên thứ ba sử dụng document.write() để tải các tập lệnh quan trọng. Người dùng mới trên khắp thế giới mở trang web của bạn nhưng có thể họ có kết nối chậm hơn so với cách bạn đã kiểm tra. Bạn không biết, trang web của bạn bắt đầu bị gián đoạn vì Chrome can thiệp vào document.write() trên các mạng chậm. Ngoài ra, bạn nên theo dõi các API không dùng nữa hoặc sắp ngừng hoạt động mà cơ sở mã của bạn có thể đang sử dụng.

API Báo cáo được thiết kế để giúp bạn theo dõi các lệnh gọi API không dùng nữa, các lỗi vi phạm bảo mật trên trang của bạn, v.v. Bạn có thể thiết lập tính năng báo cáo như mô tả trong bài viết Giám sát ứng dụng web bằng API Báo cáo.

Để xem các báo cáo do một trang tạo ra:

  1. Chuyển tới chrome://flags/#enable-experimental-web-platform-features, đặt Các tính năng của Nền tảng web thử nghiệm thành Bật rồi khởi động lại Chrome.
  2. Mở Công cụ cho nhà phát triển rồi chuyển đến Ứng dụng > Dịch vụ nền > API Báo cáo. Ví dụ: bạn có thể xem các báo cáo trên trang minh hoạ này.

    Báo cáo được liệt kê trong API Báo cáo

Thẻ API báo cáo được chia thành ba phần:

  • Bảng Báo cáo chứa các thông tin sau đây về từng báo cáo:
    • URL đã dẫn đến việc tạo báo cáo
    • Loại vi phạm
    • Báo cáo Trạng thái
    • Điểm cuối Đích
    • Dấu thời gian Đã tạo
    • Báo cáo Nội dung
  • Phần xem trước Nội dung báo cáo. Để xem trước nội dung báo cáo, hãy nhấp vào một báo cáo trong bảng báo cáo.
  • Mục Điểm cuối cung cấp thông tin tổng quan về tất cả điểm cuối được định cấu hình trong tiêu đề Reporting-Endpoints.

Trạng thái báo cáo

Cột Trạng thái cho bạn biết liệu Chrome đã gửi báo cáo thành công, sắp gửi hay không gửi được báo cáo.

Trạng thái Nội dung mô tả
Success Trình duyệt đã gửi báo cáo và điểm cuối đã trả lời bằng một mã thành công (200 hoặc một mã phản hồi thành công khác 2xx).
Pending Trình duyệt đang cố gắng gửi báo cáo.
Queued Báo cáo đã được tạo và trình duyệt chưa cố gắng gửi báo cáo. Báo cáo sẽ xuất hiện dưới dạng Queued ở một trong hai trường hợp sau:
  • Đây là báo cáo mới và trình duyệt đang chờ xem liệu có thêm báo cáo hay không trước khi gửi.
  • Báo cáo này không phải là báo cáo mới; trình duyệt đã cố gắng gửi báo cáo này nhưng không thành công và đang chờ trước khi thử lại.
MarkedForRemoval Sau khi thử lại một thời gian (Queued), trình duyệt đã ngừng tìm cách gửi báo cáo và sẽ sớm xoá báo cáo đó khỏi danh sách báo cáo cần gửi.

Báo cáo sẽ bị xoá sau một khoảng thời gian, cho dù chúng có được gửi thành công hay không.