Как исправить importScripts is not defined?

232
08 февраля 2018, 18:46

Возникла потребность подключить к сайту сервис рассылки push-уведомлений. В js-файле, предоставляемом сервисом для работы функционала, была всего одна строка: importScripts('https://ссылка-на-их-сервис/файл.js'). После подключения, в консоли браузера стала появляться ошибка:

"importScripts is not defined"

Погуглил, попробовал подключить так, как писали в советах. Но не помогло. Иногда ошибка пропадала, но сам функционал не работал (должно появляться окно с просьбой разрешить уведомления).

Что я пробовал: 1.

var worker = new Worker('https://push.esputnik.com/service-worker.js');
worker.postMessage("test");

Никакой реакции.

2.

if( 'function' === typeof importScripts) {
   importScripts('https://push.esputnik.com/service-worker.js');
   addEventListener('message', onMessage);
   function onMessage(e) { 
     // do some work here 
     console.log('work');
   }    
}

Условие не сработало.

3.

if ( 'undefined' === typeof window) {
  console.log('work');
  importScripts('https://push.esputnik.com/service-worker.js');
}

Условие не сработало.

4.

if ('serviceWorker' in navigator) {
  navigator.serviceWorker.register('https://push.esputnik.com/service-worker.js').then(function(reg) {
    // регистрация сработала
    console.log('Registration succeeded. Scope is ' + reg.scope);
  }).catch(function(error) {
    // регистрация прошла неудачно
    console.log('Registration failed with ' + error);
  });
};

Регистрация прошла неудачно... Выдало ошибку, связанную с безопасностью.

READ ALSO
Перемещение элемента массива в начало

Перемещение элемента массива в начало

Доброго времени суток, подвернулась такая задача переместить элемент массива в началоВроде сделал, но может есть более красивый способ переместить...

1286
Условное объявление функции

Условное объявление функции

В первой строчке не пойму зачем используется "+", подскажите пожалуйста

214
Работа с изображением с помощью javascript [требует правки]

Работа с изображением с помощью javascript [требует правки]

На экране задано изображениеНаписать сценарий, позволяющий изменять размеры рисунка, его границу (данные вводятся пользователем)

226