I have an application up and running on Heroku with Express.js on Node.js with https. How do I identify the protocol to force a redirect to https with Node.js on Heroku?
My app is just a simple http-server, it doesn’t (yet) realize Heroku is sending it https-requests:
// Heroku provides the port they want you on in this environment variable (hint: it's not 80)
app.listen(process.env.PORT || 3000);
The answer is to use the header of ‘x-forwarded-proto’ that Heroku passes forward as it does it’s proxy thingamabob. (side note: They pass several other x- variables too that may be handy, check them out).
My code:
Thanks Brandon, was just waiting for that 6 hour delay thing that wouldn’t let me answer my own question.