Charlie Davies Charlie Davies - 6 months ago 14
Ruby Question

Setting Request Headers in Ruby

I have the rest client gem and I am defining a request like this:

url = 'http://someurl'
request = {"data" => data}.to_json
response = RestClient.post(url,request,:content_type => :json, :accept => :json)


However I need to set the HTTP header to something. For example an API key. Which could be done in curl as:

curl -XHEAD -H x-auth-user: myusername -H x-auth-key: mykey "url"


Whats the best way to do this in ruby? Using this gem? Or can I do it manually to have more control.

Answer

The third parameter is the headers hash.

You can do what you want by:

response = RestClient.post( 
  url, 
  request,
  :content_type => :json, :accept => :json, :'x-auth-key' => "mykey")
Comments