http Post请求和rails中的授权标头声明

时间:2015-05-16 10:36:11

标签: ruby-on-rails http

我正在尝试使用Ruby on Rails执行HTTP授权。以下是我正在尝试的内容:

res = http.post(uri.request_uri, 
:Authorization => cobSessionToken,
"coBrandSessionCredential=loginToken=#{cobSessionToken}&userLogin=#{login}&userPassword=#{password}")
render :json =>  {"isValid" => true, "Body" => JSON.parse(res.body)}

这似乎不起作用。我该如何进行授权?

2 个答案:

答案 0 :(得分:0)

这样的事情怎么样?

url = URI.parse('https://my.url.com/path')
req = Net::HTTP::Post.new(url.path)
req.basic_auth 'user', 'pass'
req.use_ssl = true
req.form_data({'key1' => 'val1', 'key2' => 'val2'})

resp = Net::HTTP.new(url.host, url.port).start {|http| http.request(req) }
puts resp

答案 1 :(得分:0)

我建议使用像postman这样的东西(它可以在谷歌商店获得的免费谷歌程序),以确保错误不在服务器端。使用Net:http它附带ruby,所以你不需要安装它,但你必须要它。 要求: require "net/http" require "uri" 使用此cheatsheet我认为您需要basic_auth.rb您将看到如何形成请求。