Thông tin cơ bản về trình chạy dịch vụ tiện ích

Trình chạy dịch vụ tiện ích được cài đặt và cập nhật theo cách khác với trình chạy dịch vụ web. Trang này giải thích những điểm khác biệt đó.

Đăng ký trình chạy dịch vụ

Để đăng ký một trình chạy dịch vụ tiện ích, hãy chỉ định trình chạy này trong trường "background" của tệp manifest.json. Dùng khoá "service_worker" để chỉ định một tệp JavaScript duy nhất. Worker dịch vụ trong trang web hoặc ứng dụng web đăng ký worker dịch vụ bằng cách phát hiện tính năng đầu tiên cho serviceWorker trong navigator, sau đó gọi register() bên trong tính năng phát hiện. Cách này không hiệu quả với các tiện ích.

{
  "name": "Awesome Test Extension",
  ...
  "background": {
    "service_worker": "service-worker.js"
  },
  ...
}

Nhập tập lệnh

Có hai phương thức để nhập tập lệnh vào trình chạy dịch vụ: câu lệnh import và phương thức importScripts(). Xin lưu ý rằng import(), thường được gọi là nhập động, không được hỗ trợ.

Để sử dụng câu lệnh import, hãy thêm trường "type" vào tệp kê khai và chỉ định "module". Ví dụ:

  "background": {
    "service_worker": "service-worker.js",
    "type": "module"
  }

Sau đó, hãy sử dụng import như bình thường. Lưu ý rằng tính năng xác nhận nhập không được hỗ trợ.

import { tldLocales } from './locales.js';

Sử dụng importScripts() giống như cách bạn sử dụng trong một trình chạy dịch vụ web.

importScripts('locales.js');

Cập nhật

Để cập nhật worker dịch vụ, hãy phát hành phiên bản mới của tiện ích lên Cửa hàng Chrome trực tuyến. Bạn không thể giải quyết vấn đề này bằng cách tải tiện ích từ máy chủ. Vì lý do bảo mật, Manifest V3 không hỗ trợ mã được lưu trữ từ xa. Worker của dịch vụ phải thuộc gói tiện ích.