首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许经过身份验证的Devise用户访问Doorkeeper保护的控制器操作

允许经过身份验证的Devise用户访问Doorkeeper保护的控制器操作
EN

Stack Overflow用户
提问于 2016-11-24 13:24:43
回答 1查看 343关注 0票数 1

我的应用程序接口使用OAuth2和Doorkeeper,UI级别的身份验证使用Devise。

我的应用程序是由简单的ol文件组成的,但我需要添加一个自动完成搜索输入,它通过AJAX将查询发送到API端点之一。

用户通过devise会话进行身份验证,并且可以作为current_user使用,但是由于API端点受before_action :doorkeeper_authorize!保护,因此我得到了一个401。

有没有办法“绕过”doorkeeper_authorize!,因为用户已经通过Devise进行了身份验证?

一种选择是将动作从API控制器复制出来,并添加到我的“普通”UI中心控制器中,该控制器只是使用Devise进行保护,但这太难看了。

EN

回答 1

Stack Overflow用户

发布于 2016-12-29 03:26:44

这是我使用的一个对我有效的解决方案。

代码语言:javascript
运行
复制
before_filter :doorkeeper_authorize!, :unless => :logged_in?

我没有使用devise,所以我不熟悉用于检查身份验证的方法,但是我的application_controller上有一个logged_in?方法,如果用户在本地(通过cookie)进行身份验证,该方法将返回true。这会使任何Oauth检查短路。

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

https://stackoverflow.com/questions/40778598

复制
相关文章

相似问题

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