Looking through all of the documentation at
http://www.ruby-doc.org/stdlib/libdoc/net/http/rdoc/index.html
and
http://www.ruby-doc.org/stdlib/libdoc/net/http/rdoc/classes/Net/HTTP.html
I don't see any way that I could do something equivalent to like wget...
wget -no-check-certificate https://myserver/myfile.txt
Is there any way to accomplish this with net/http or do I have to
execute a shell wget and open the file locally?
Craig
in console...
>> url.path =
"/horde/kronolith/ics.php?c=5be410ec5238fc93c1f66b1a935365c9"
URI::InvalidComponentError: bad component(expected absolute path
component): /horde/kronolith/ics.php?c=5be410ec5238fc93c1f66b1a935365c9
from /usr/lib/ruby/1.8/uri/generic.rb:475:in `check_path'
from /usr/lib/ruby/1.8/uri/generic.rb:495:in `path='
from (irb):354
from :0
and if I substitute %3F for the ? it will accept the 'path'...
>> url.path = "/horde/kronolith/ics.php%
3Fc=5be410ec5238fc93c1f66b1a935365c9"
=> "/horde/kronolith/ics.php%3Fc=5be410ec5238fc93c1f66b1a935365c9"
but it doesn't work
>> res = Net::HTTP.new(url.host, 443)
=> #<Net::HTTP my_server:443 open=false>
>> res.use_ssl=true
=> true
>> res.verify_mode = OpenSSL::SSL::VERIFY_NONE
=> 0
>> ret=res.start {|http| http.request(req)}
=> #<Net::HTTPBadRequest 400 Bad Request readbody=true>
nor does this URL work with wget...
wget --no-check-certificate
https://craig:*****@my_server//horde/kronolith/ics.php%
3Fc=5be410ec5238fc93c1f66b1a935365c9
--13:06:07--
https://craig:*password*@my_server//horde/kronolith/ics.php%
3Fc=5be410ec5238fc93c1f66b1a935365c9
=> `ics.php?c=5be410ec5238fc93c1f66b1a935365c9.1'
Resolving my_server... 192.168.3.5
Connecting to my_server|192.168.3.5|:443... connected.
WARNING: Certificate verification error for my_server: self signed
certificate
HTTP request sent, awaiting response... 404 Not Found
13:06:07 ERROR 404: Not Found.
of course with a ? instead of %3F, it works
How does one use net/http (net/https) with URL's that have a ?
?
Craig