Back to Problem Solutions forum
tl;dr: Please support port numbers in URLs.
I was looking to do some of the web-related problems but every attempt at the first one had given me nothing but:
Request to your URL failed :(
from CodeAbbey.
After much aggrevation I discovered that the CodeAbbey HTTP client fails to handle URLs with a port number.
I.e. http://host:8092/187/secret.txt
doesn't work but http://host/187/secret.txt
does
(where "host" is my external IPv4 address,
and yes I verified on machines very external to me
that they had no problems fetching from the former,
and I tried several port numbers before relenting
and openning port 80 inbound on my firewall).
This is very sad as it's basic URL handling (and/or basic networking) that it's getting wrong (and I don't like opening up port 80 inbound on my firewall).
If there is some sane reason for this brokeness (a firewall at CodeAbbey that limits outgoing connections perhaps?), then at the absolute minimum please parse port numbers in the URL and change the error message to something like:
We're sorry, but for <…reason…> we don't support URLs with port numbers.
Thank you.
Hi! Thanks a lot for your message!
Please excuse me for delay with the answer.
You are quite correct - the problem is in port number. I'm sorry for this functionality was created in a kind of hurry and some rough limitations were added after I found few obvious vulnerabilities (like submitting references to localhost or even local files).
Surely you are right - this needs to be improved. I'll try to take care of this (though as I remember all these problems need even larger refactoring so that they could utilize a single piece of url-checking code etc).