Connect reset by peer error

28 views
Skip to first unread message

iDev

unread,
May 25, 2012, 6:38:04 AM5/25/12
to rubyonra...@googlegroups.com
Hi all

I'm getting a 'Connection reset by peer' while getting an access token during oAuth from a third party API. Here's the code snippet:

def accesstoken
@code = params[:code]

url = URI.parse('access token request url')
req = Net::HTTP::Post.new(url.path)
req.set_form_data({'auth_code' => @code, 'client_id'=>'my_client_id', 'client_secret'=>'my_secret_key'}, ';')
res = Net::HTTP.new(url.host, url.port).start { |http| http.request(req) }
case res
when Net::HTTPSuccess, Net::HTTPRedirection
# OK
else
# res.error!
end

render :text => @code.inspect

end

I get a valid authorization code but unable to proceed to get access token due to above error. The third party API has to return a response in json format.
Any help is much awaited and appreciated!

Matt Jones

unread,
May 26, 2012, 1:39:31 PM5/26/12
to rubyonra...@googlegroups.com


On Friday, 25 May 2012 06:38:04 UTC-4, iDev wrote:
Hi all

I'm getting a 'Connection reset by peer' while getting an access token during oAuth from a third party API. Here's the code snippet:

def accesstoken
@code = params[:code]

url = URI.parse('access token request url')
req = Net::HTTP::Post.new(url.path)
req.set_form_data({'auth_code' => @code, 'client_id'=>'my_client_id', 'client_secret'=>'my_secret_key'}, ';')


Is there some particular reason you're using the semicolon separator here? Unless you've got a very weird server on the other end, the default separator for set_form_data (&) is almost certainly the correct thing to use.

Also note that, given that you're sending client_secret, you should be using SSL for this connection as well - see my reply to your earlier post.

--Matt Jones
 
Reply all
Reply to author
Forward
0 new messages