首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么需要在rails api中传入auth_token进行身份验证?

为什么需要在rails api中传入auth_token进行身份验证?
EN

Stack Overflow用户
提问于 2013-02-12 22:41:36
回答 1查看 403关注 0票数 0

我有rails应用程序,它也可以作为api使用devise身份验证,就rails应用程序而言,身份验证进行得很好。但是在Rails Api的情况下,为什么我需要像传递auth_token一样传递auth_token.Looks需要定制设备控制器,它似乎是使用rest客户端的请求体中的pain.Passing auth_token允许我通过Post方法登录,但我没有找到任何响应。我需要定制devise控制器吗?

我需要帮助谢谢,

EN

回答 1

Stack Overflow用户

发布于 2013-02-12 23:08:02

我不想将您的:auth_token附加到客户端的POST/PUT参数中,而是将此令牌作为请求标头发送。

你可以这样做-

代码语言:javascript
运行
复制
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的认证密钥设置我们的api密钥,比如-

代码语言:javascript
运行
复制
config.token_authentication_key = :api_key

您还可以使用自定义策略来支持this等设备中的token HTTP header身份验证

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14835053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档