Skip to content

CezaryDanielNowak/CrossOriginWorker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CrossOriginWorker

Method to run worker from other origins.

Workaround for the following error:

Uncaught (in promise) DOMEXception: Failed to construct 'Worker' (...) cannot be accessed from origin (...)

This solution doesnt break importScripts. This method allows to use BarcodeDetector in a Worker from 3rd party origin.

Installation

npm install crossoriginworker

Usage

import getCrossOriginWorkerURL from 'crossoriginworker';

async function createWorker() {
  const workerURL = await getCrossOriginWorkerURL('https://somedomain.com/lib/awesome.worker.js');
  return new Worker(workerURL);
}

const myWorker = await createWorker();

Options

CrossOriginWorker has several options, that might be useful in some instances:

  getCrossOriginWorkerURL(url, OPTIONS);

options.skipSameOrigin (default true)

When worker is hosted on the same domain, load it right away.

options.useBlob (default true)

Create additional proxy Blob that contains worker code. Disable in case of problems.

About

Method to run worker from other origins.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published