Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
404 Grails的Spring Security Rest插件何时注销_Spring_Rest_Grails_Spring Security_Spring Security Rest - Fatal编程技术网

404 Grails的Spring Security Rest插件何时注销

404 Grails的Spring Security Rest插件何时注销,spring,rest,grails,spring-security,spring-security-rest,Spring,Rest,Grails,Spring Security,Spring Security Rest,我正在使用Grails2.4.4的v1.5.4(使用SpringSecurityCore2.0.0)为我的项目(Grails-Angularjs)设置安全系统。可以找到关于这个插件的文档 我正在用postman chrome rest客户端测试登录和注销,我可以正常登录,但当我注销时会得到404 文件中明确指出: 注销筛选器公开用于删除令牌的端点。会的 从HTTP头读取令牌。如果找到,将从中删除它 存储,发送200响应。否则,它将发送404 回应 您可以使用以下属性在Config.groovy中

我正在使用Grails2.4.4的v1.5.4(使用SpringSecurityCore2.0.0)为我的项目(Grails-Angularjs)设置安全系统。可以找到关于这个插件的文档

我正在用postman chrome rest客户端测试登录和注销,我可以正常登录,但当我注销时会得到404

文件中明确指出:

注销筛选器公开用于删除令牌的端点。会的 从HTTP头读取令牌。如果找到,将从中删除它 存储,发送200响应。否则,它将发送404 回应

您可以使用以下属性在Config.groovy中对其进行配置:

配置键默认值 值

grails.plugin.springsecurity.rest.logout.endpointUrl../api/logout grails.plugin.springsecurity.rest.token.validation.headerName…X-Auth-token

因此,在成功登录后,我尝试使用GET方法注销该url(my_host\u url/api/logout),并使用我以前从登录中获得的令牌发送头X-Auth-Token

但我一直得到一个404。见下图

编辑:我这样设置链映射(为了获得无状态行为):

所以。我做错了什么,或者我错过了什么


提前谢谢

你错过了文件的另一个摘录。这是一条警告信息,就在你引用的那块之前,上面写着:

使用JWT令牌(默认策略)时无法注销,因为服务器中不保留任何状态

如果您仍然希望注销,您可以通过创建
JwtTokenStorageService
的子类并重写方法
storeToken
removeToken
来提供自己的实现。然后,在
resources.groovy
中将您的实现注册为
tokenStorageService


您能提供“注销”方法的代码吗?我想,资源映射缺少“get”方法或正确的“path”@devbd,谢谢您的回复!实际上,我没有实现
注销
方法。我认为插件隐式地添加了这个作为
login
方法。是否正确?请检查插件默认登录url。我想,url应该是“/注销”。我的错误..,请检查grails.plugin.springsecurity.filterChain.chainMap是否设置为“无状态”5.2。插件配置Hi,Álvaro Sánchez Mariscal,是否有推荐的教程教您如何使用
JwtTokenStorageService
的子类实现注销功能?我知道,当我将SpringSecurityREST与GORM一起使用时,注销功能可以完美地工作。另外,谢谢你的插件:)我不知道
grails.plugin.springsecurity.filterChain.chainMap = [
        '/api/**': 'JOINED_FILTERS,-exceptionTranslationFilter,-authenticationProcessingFilter,-securityContextPersistenceFilter,-rememberMeAuthenticationFilter',  // Stateless chain
        '/**': 'JOINED_FILTERS,-restTokenValidationFilter,-restExceptionTranslationFilter'                                                                          // Traditional chain
]