From: itsme213 Date: 2006-01-05T00:47:58+09:00 Subject: Re: Net::HTTP.post_form method undefined? Thanks Alex, that was it, I'm on 1.8.3. "Alex Fenton" wrote in message news:2KKdnYKLbIafBSbeRVnyig@pipex.net... > itsme213 wrote: >> I'm trying to do a POST using net/http. >> >> r = Net::HTTP.post_form(u,{'volumectrl'=>'-20'}) >> >> I get: >> >> NoMethodError: undefined method `post_form' for Net::HTTP:Class >> from (irb):5 > > What ruby version are you running? I ran into this same problem last week, > and it was because the standard stdlib documentation (on ruby-doc) refers > to ruby 1.9, where the post_form method exists. It doesn't exist in ruby > 1.8. Annoying huh? > > Try something like: > > Net::HTTP.start('www.foo.com', 80) do | http | > response = http.post('/cgi-bin/foo.cgi', encoded_post) > end > > Note that you'll need to manually turn your hash into a URI-encoded > string. Look at URI.encode() in the stdlib. > > alex