Skip to main content

How to register a web worker in a custom extension?

  • December 29, 2023
  • 2 replies
  • 24 views

Jake_Wilson
Forum|alt.badge.img+5

I'm getting a CORS error when instantiating a Worker.  What do I need to do to avoid this CORS error when instantiating a Worker?  

"Failed to construct 'Worker': Script at 'https://localhost:9000/worker.ts' cannot be accessed from origin 'https://devblock---t-vjm-s-v7-g-mvh-c-b-r--55q8cmv.alt.airtableblocks.com'."

 

 

import { initializeBlock } from "@airtable/blocks/ui"; import React from "react"; function HelloWorldTypescriptApp() { const useWebWorker = () => { const worker = new Worker("worker.ts"); // <-- throws error mentioned above worker.postMessage("foo"); }; return <button onClick={useWebWorker}>Click me</button>; } initializeBlock(() => <HelloWorldTypescriptApp />);

 

source code: https://github.com/jacobwilson41/airtable_web_worker_example/tree/main/frontend

 

2 replies

Jake_Wilson
Forum|alt.badge.img+5
  • Author
  • Inspiring
  • February 8, 2024

Found this in their docs

"Our Blocks SDK allows users to build a custom extension with React.js. It gives teams the advantage of creating a custom interface that allows users to interact with the integration. Note: This code runs client-side and may require a CORS work-around."


Jake_Wilson
Forum|alt.badge.img+5
  • Author
  • Inspiring
  • February 8, 2024

"Creating Web Workers is not allowed."