Hello,
I am developing a website which starts a web worker using the js code:
const zarrWorker = new Worker('./zarr_file.js', { type: 'module' });
.
The script 'zarr_file.js' is served from the same origin with Cross-Origin-Embedder-Policy: require-corp
and Cross-Origin-Opener-Policy: same-origin
and it is importing external modules through the import statement (e.g. import * as zarr from "https://cdn.jsdelivr.net/npm/zarrita/+esm";
).
All the external modules are blocked by Safari with the error Worker load was blocked by Cross-Origin-Embedder-Policy, although I can see (by running curl on them) that they correctly set
cross-origin-resource-policy: cross-origin`.
The same website works fine in Chrome and Firefox.
Is it a bug or is Safari implementing stricter policies? In the latter case what would be the solution?