http://localhost:8787
is not an address it can reach. Run the handler with pnpm run dev:worker, put a tunnel in front
of it, and pass the public URL to the dev session.
- cloudflared
- ngrok
https://<random>.trycloudflare.com URL. That is the value for --server.1
Start your server
server/worker.ts on http://localhost:8787. A Node or Express handler is
the same idea on its own port.2
Start the tunnel
One of the commands above, in a terminal of its own. Copy the
https URL.3
Start the dev session with the URL
4
Confirm the tunnel reaches it
{"ok":true,"version":"0.1.0"}. Health is the one route that needs no
token, which is why it is the check to run first.What Tappify sends through the tunnel
Every call carries an install token audienced to your extension, an idempotency header, the project context and the page’s current filters, plus your install’s stored documents and the owner’s credentials when your manifest declaresconnector.auth. That is the same shape production sends, so a procedure that works through the
tunnel works after publish.
Notes
- The tunnel URL changes each time you restart it on the free tiers. Restart the dev session with the new URL, or use a named tunnel.
--serversets the URL for this session only. It does not change your manifest. Set the permanent value withtappify extension set server.sandboxBaseUrl <url>.- A
http://localhostURL is accepted and then fails, because the call comes from Tappify’s servers rather than your machine. Any other host has to behttps. - A response has 30 seconds and 1 MB. A tunnel adds latency at both ends, so test near the limit before you rely on it.