Я столкнулся с интересной проблемой при создании размещенного API, основанного на веб-воркерах. Я надеялся получить небольшую обратную связь от сообщества.
Мой сервер настроен с соответствующими заголовками CORS для доставки рабочих файлов JS и может быть получен с помощью объекта XMLHttpRequest
. Однако, когда URL-адрес передается new Worker()
, он не строится, ссылаясь на источник проблемы. Похоже, это проблема как в Firefox, так и в Chrome. Проверьте это сами и мой обходной путь здесь: http://jsfiddle.net/5ag42hb1/11/ а>
Разве это не странное поведение? Документы Mozilla говорят, что веб-воркеры должны подчиняться политике одинакового происхождения и использовать CORS для обеспечения доступа между источниками.
У скрипки есть обходной путь: сохранить файл в большом двоичном объекте и вместо этого передать его работнику. Однако это кажется менее чем идеальным, поскольку вносит много ненужной сложности. Может ли кто-нибудь придумать более чистое решение? Есть ли хороший канал для правильной реализации этого?