BackgroundFetchRegistration: match() method
Khả dụng hạn chế
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Note: This feature is available in Web Workers.
Phương thức match() của giao diện BackgroundFetchRegistration trả về BackgroundFetchRecord khớp đầu tiên.
Cú pháp
match(request)
match(request, options)
Tham số
request-
Requestmà bạn đang cố tìm các bản ghi tương ứng. Tham số này có thể là một đối tượngRequesthoặc một URL. optionsOptional-
Một đối tượng thiết lập các tùy chọn cho thao tác
match. Các tùy chọn khả dụng là:ignoreSearchOptional-
Một giá trị boolean cho biết có bỏ qua chuỗi truy vấn trong URL hay không. Ví dụ, nếu đặt thành
truethì phần?value=barcủahttps://example.com/?value=barsẽ bị bỏ qua khi thực hiện so khớp. Mặc định làfalse. ignoreMethodOptional-
Một giá trị boolean. Khi là
true, thao tác so khớp sẽ không kiểm tra phương thứchttpcủaRequest. Nếu làfalse(mặc định) thì chỉ cho phépGETvàHEAD. ignoreVaryOptional-
Một giá trị boolean. Khi là
true, nó cho biết nên bỏ qua headerVary. Mặc định làfalse.
Giá trị trả về
Một Promise phân giải thành BackgroundFetchRecord đầu tiên khớp với yêu cầu, hoặc undefined nếu không tìm thấy kết quả khớp nào.
Note:
BackgroundFetchRegistration.match() về cơ bản giống hệt BackgroundFetchRegistration.matchAll(), ngoại trừ việc thay vì phân giải thành một mảng gồm mọi bản ghi khớp, nó chỉ phân giải thành bản ghi khớp đầu tiên.
Ngoại lệ
InvalidStateErrorDOMException-
Được trả về nếu bạn gọi
match()khi không có lượt tìm nạp nào đang diễn ra. Trạng thái này sẽ được phản ánh bằng việcBackgroundFetchRegistration.recordsAvailableđược đặt thànhfalse.
Ví dụ
Trong ví dụ này, chúng ta tìm một bản ghi có URL là "/ep-5.mp3". Nếu tìm thấy một BackgroundFetchRecord, chúng ta có thể trả về một số thông tin về nó.
bgFetch.match("/ep-5.mp3").then(async (record) => {
if (!record) {
console.log("No record found");
return;
}
console.log(`Here's the request`, record.request);
const response = await record.responseReady;
console.log(`And here's the response`, response);
});
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| Background Fetch> # background-fetch-registration-match> |