2015-12-27 2 views
2

Как сделать запрос JSONP внутри Service Worker?Как сделать запрос JSONP внутри Service Worker?

Как вы знаете, у Рабочего Работника нет document. Поэтому многие подходы к JavaScript, такие как this one, не работают.

Мне нужно сделать запрос JSONP, потому что API Blogger не отвечает на запросы из разных доменов с помощью CORS.

Благодарим за отзыв.

ответ

5

Глобальный веб-рабочий имеет метод, называемый importScripts, который можно использовать для включения URL-адресов сценариев.

Так просто определить функцию обратного вызова, использовать имя функции в качестве параметра callback URL-адрес и передать URL в importScripts

webworker.js

function cb(data){ 
    console.log(data); 
} 

importScripts('http://example.com/jsonp.php?callback=cb'); 
+0

Спасибо большое! Оно работает! (Я использовал 'self.cb = function (resp) {}') – melanke