在http标头中设置身份验证令牌

son*_*002 5 ruby ruby-on-rails ruby-on-rails-3

我一直关注如何设置身份验证令牌的railscast http://railscasts.com/episodes/352-securing-an-api?view=asciicast

我已经很好地设置了我的应用程序,它使用authenticate_or_request_with_http_token方法来获取令牌.

我的问题是我有一个下一个需要在标题中设置令牌的应用程序.就像是:

uri = URI.parse(full_url)
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Get.new(uri.request_uri)
request['HTTP_AUTHORIZATION'] = 'this_is_a_test_key'
response = http.request(request)
Run Code Online (Sandbox Code Playgroud)

上面的代码被拒绝访问.我知道设置自定义的X-CUSTOM-TOKEN很容易,但是如何设置默认值呢?

Mau*_*res 14

标题名称不是HTTP_AUTHORIZATION,您必须像这样设置它:

request['authorization'] = "Token token=#{token}"
Run Code Online (Sandbox Code Playgroud)

能够使用该authenticate_or_request_with_http_token方法.