Как прокси-вызов JSONP в сервисном работнике - PullRequest
0 голосов
/ 06 октября 2019

Мой сайт получает некоторые пользовательские данные с другого сайта через вызов jsonp. Как я могу прокси-запросить этот запрос для автономного использования?

1 Ответ

0 голосов
/ 07 октября 2019

Шаблон JSONP включает добавление на вашу страницу элемента <script>, источник которого будет вызывать обратный вызов, который предоставляет данные с удаленного URL-адреса вашей страницы.

Отс точки зрения сервисного работника, это добавление <script> вызовет событие fetch с event.request.destination, установленным на 'script'. Кроме того, для event.request.url будет задан полный URL-адрес ресурса сценария JSONP. Вы можете использовать комбинацию одного или обоих из этих фактов, чтобы сообщить обработчику fetch вашего сервисного работника, чтобы он делал что-то особенное, когда он встречает запрос JSONP:

self.addEventListener('fetch', (event) => {
  if (event.request.destinaton = 'script' &&
      event.request.url.startsWith('https://example.com')) {
    // Your caching strategy goes here.
    // E.g. https://developers.google.com/web/fundamentals/instant-and-offline/offline-cookbook#network-falling-back-to-cache
  }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...