Sometimes I want to sent a qualified URL in a mail from my node application. Or I would like to set the content of a phantom page object.
I get the full URL like this in my deployment setup.
'http://' + req.hostname + '/myapp'
However on the development machine this usually produces:
http://localhost/myapp instead off http://localhost:3000/myapp
I know how to get the port but I don't want to use something like:
'http://' + req.hostname + ':' + port + '/myapp'
Which would produce nonsense like this in deploy behind a proxy.
Is there a smart way to get the hostname with port from the request object if the app runs outside a proxy?