[erlang-questions] Sometime it's the simple stuff...

Ingela Anderton Andin <>
Mon May 5 09:12:57 CEST 2008

> I need to take an IP address in the form of "[{10,0,1,100}]" and  
> create an http URL like this:  "".  I've tried using  
> io_lib:format and successfully generated a list.  But, the inets http  
> client  doesn't  like the format and complains of a malformed URL.

Here I use io_lib:format to create a URL-string from your exampel (I guess that you mean that you have the ip-address on tupel
format and not that you have a string looking like "[{10,0,1,100}]") and
the inets client will parse it just fine. I did not do http:request as I have
no server at this address...

1> URL = lists:flatten(io_lib:format("http://~w.~w.~w.~w/", tuple_to_list({10,0,1,100}))).
2> http_uri:parse(URL).

... but to prove my point I can do:

3> http:request(URL).

... e.i it tried to call gen_tcp:connect and got connection refused, hence it has already parsed the URL

But if you miss out one of the first "/" for instance:

4> http_uri:parse("http:/").

5> http:request("http:/").

Maybe you missed something?

Regards Ingela -OTP team

More information about the erlang-questions mailing list