我需要在 Rails 3.1 API 中与最新版本的设计结合使用基于令牌的身份验证。到目前为止没有问题。
现在我不想将 :auth_token 附加到客户端的 POST/PUT 参数,而是将此令牌作为请求标头发送,如 HTTP_X_MYAPP_AUTH_TOKEN”。
我可以说服设计使用它而不是参数中的令牌吗?是否可以同时实现两者,以便我的 API 用户可以通过请求标头或 POST/PUT 参数发送令牌?
问候。菲利克斯
我有同样的需求并提出了这个解决方案:
class YourController < ApplicationController
prepend_before_filter :get_api_key
before_filter :authenticate_user!
private
def get_api_key
if api_key = params[:api_key].blank? && request.headers["X-API-KEY"]
params[:api_key] = api_key
end
end
end
注意我有我的设备Devise.token_authentication_key
set to api_key
.
config.token_authentication_key = :api_key
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)