error: “Forbidden“ message: “Forbidden“
错误信息截图:
原因:
ajax请求中没有添加 csrf token参数
解决:
1 关闭跨站请求
package com.example.demo.Config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.provisioning.InMemoryUserDetailsManager;@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {@Overrideprotected void configure(HttpSecurity http) throws Exception {http.authorizeRequests().antMatchers("/","/home","/css/**","/js/**","/img/**").permitAll().anyRequest().authenticated().and().formLogin().loginPage("/login").permitAll().and().logout().permitAll().and().csrf().disable();}@Bean@Overridepublic UserDetailsService userDetailsService() {UserDetails user =User.withDefaultPasswordEncoder().username("user").password("password").roles("USER").build();return new InMemoryUserDetailsManager(user);}
}
2 在ajax请求头部添加上csrf _token
页面头部
<html>
<head> <meta name = “_csrf” content = “${_csrf.token}” /> <!-- 默认标题名称是X-CSRF-TOKEN --> <meta name = “_csrf_header” content = “${_csrf.headerName}” />
</ head>
var token = $("meta[name='_csrf']").attr("content");
var header = $("meta[name='_csrf_header']").attr("content");
$.ajax({url:url,type:'POST',async:false,dataType:'json', //返回的数据格式:json/xml/html/script/jsonp/textbeforeSend: function(xhr) {xhr.setRequestHeader(header, token); //发送请求前将csrfToken设置到请求头中},success:function(data,textStatus,jqXHR){}
});
3 如果form表单的话可以添加一个隐藏域
<input type = “hidden" name = “${_csrf.parameterName}" value = “${_csrf.token}" />
error: “Forbidden“ message: “Forbidden“相关推荐
- Error from server (Forbidden): Forbidden (user=system:anonymous, verb=get, resource=nodes, subresour
报错 Error from server (Forbidden): Forbidden (user=system:anonymous, verb=get, resource=nodes, subres ...
- Error from server (Forbidden): Forbidden (user=system:anonymous...)
1.报错信息如下: Error from server (Forbidden): Forbidden (user=system:anonymous, verb=get, resource=nodes, ...
- Transport (VMDB) error -44: Message
关于点击电源按钮的时候出现了这情况Transport (VMDB) error -44: Message. 虚拟机有个服务没开.开始菜单--运行--services.msc 回车 找到VMw ...
- error: [FabricCAClientService.js]: Failed to enroll admin, error:%o message=Calling enroll endpoint
参考文章:Failed to enroll admin 1.执行fabcar示例程序时,node enrollAdmin.js报错: error: [FabricCAClientService.js] ...
- cas单点注销失败Error Sending message to url endpoint
最近在做cas单点登录时,由于是单点登录.必然会涉及到单点注销,然而在做单点注销时由于对cas注销机制不了解加之测试条件所致,所有测试都是在本机下完成(机器性能较低,没用虚拟机):导致折腾了很久.网上 ...
- 解决 Moveit中error: Trajectory message contains waypoints that are not strictly increasing in time
最近在复现一个多路点,利用Moveit(python)下的笛卡尔运动规划进行UR5机械臂的控制实验. 在多路点运动规划时,可以进行多点规划,但是在执行时,会出现报错的情况,总体来看是可以规划,但是不能 ...
- Fatal message conversion error; message rejected; it will be dropped or routed to
最近项目中,消费端在消费MQ队列中的消息中报错:Fatal message conversion error; message rejected; it will be dropped or rout ...
- Fatal message conversion error;message rejected;it will be dropped or routed to a dead letter exchan
在使用rabbitmq的时候出现消息反序列化失败,如下异常: Fatal message conversion error; message rejected; it will be dropped ...
- VMware “Transport(VMDB)error -44:Message”
这种情况说明虚拟机的一个服务没有开启,在本机中找到服务: 1. "打开运行"-"services.msc"回车. 2. 找到VMware Authorizati ...
最新文章
- Jenkins实现SVN+Maven+Java项目的持续集成
- 6. ZigZag Conversion
- android唤醒前台,Android将后台应用唤起到前台的方法 (SDK 4.0, ActivityLifecycleCallbacks)...
- DCMTK:CT位置FG类测试
- 95-280-037-源码-资源管理-计算资源管理-TaskSlot-ResourceManage 中 Slot 的管理
- 捷信达会员管理系统SQL语句相关
- 图片裁剪_如何使用word裁剪图片图形?如何使用word修整图片?
- java解决中文乱码的几种写法
- 静态文件html中加入php的Url,YII中URL伪静态加前缀.html的方法
- .Net代码检查工具 Gendarme
- HTML+CSS导航栏及下拉菜单的实现
- JAVA中成员变量和局部变量区别
- SQL的between....and 用法
- Hbuilder连接NOX夜神模拟器
- 技术期刊 · 白日照耀开鸿蒙 | 深入鸿蒙 ACE UI 框架解析;无限循环的 useEffect 类型;用 Three.js 实现 3D 房间;图神经网络入门;超基础的机器学习入门-原理篇
- JTextArea:文本域组件
- VMware桥接模式下虚拟机ping主机不通
- MATLAB-Appdesigner中的函数调用
- linux下使用VSCode的C++添加json问题。
- 网上购车平台易车买车好吗!