I am running a local webserver, which runs an XHR request to an ngrok server, also run from my PC.
I'm getting XMLHttpRequest cannot load http://foo.ngrok.io/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access
.
It appears the ngrok FAQ mentions CORS headers, but only in relation to basic auth - it doesn't mention how to set the headers so I could test my app in development.
How do I change ngrok's CORS options to allow loading requests from localhost?
I just stumbled across this issue today and was able to resolve it by starting ngrok
and including the -host-header
flag.
ngrok http -host-header=rewrite 3000
From the docs:
Use the
-host-header
switch to rewrite incoming HTTP requests.If rewrite is specified, the Host header will be rewritten to match the hostname portion of the forwarding address.