Событие выборки не запускается в сервис-воркере, когда запрос Cors был отправлен на веб-страницеJavascript

Форум по Javascript
Anonymous
Событие выборки не запускается в сервис-воркере, когда запрос Cors был отправлен на веб-странице

Сообщение Anonymous »

Вот мой код. И index.html, и service-worker.js обслуживаются по адресу http://localhost:8080.
index.html

Код: Выделить всё




if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/service-worker.js", {
scope: "/",
// scope: "http://localhost:9999/"
});
}



send cors-request

document.querySelector("#sendApiRequest").addEventListener("click", () => {
const API = "http://localhost:9999/api/data";
fetch(API);
});



service-worker.js

Код: Выделить всё

self.addEventListener("fetch", (event) => {
console.log("fetch event fired", event.request.url);
});
Ниже приведен мой смоделированный код API на стороне сервера, который обслуживался на http://localhost:9999

Код: Выделить всё

// Mock API server with NodeJs

const http = require('http');

const server = http.createServer((req, res) => {
res.setHeader('Access-Control-Allow-Origin', '*');
const data = {
msg: 'success',
time: new Date().toLocaleString(),
}
res.end(JSON.stringify(data));
});

const port = 9999;
server.listen(port, () => {
console.log(`backend api on http://localhost:${port}`);
});
Когда я нажимаю кнопку отправки запроса, событие выборки в service-worker.js не запускается. В чем проблема? И как мне перехватывать запросы CORS в сервис-воркере?

Подробнее здесь: https://stackoverflow.com/questions/798 ... t-in-webpa

Вернуться в «Javascript»