主页
文章
知识库
云盘
工具
登录
登录
注册
忘记密码
反馈
文章
Flask项目使用ajax发送请求,解决 CSRF
Flask项目使用ajax发送请求,解决 CSRF
lyjin
2022-06-16
在flask项目中,一般都配置了CSRF,表单提交时,带上csrf_token字段即可,如果是ajax方式提交,需要设置csrf_token ``` const csrfToken = $('meta[name=csrf-token]').attr('content'); const postData = {a: 1, b:2, c:3} $.ajax({ url: "Your url", type: 'post', data: JSON.stringify(postData), dataType: 'json', contentType: 'application/json; charset=utf-8', success: function(res) { console.log(res, 'post success') }, error: function(e) { console.log(e, 'post failed!') }, beforeSend: function(xhr, settings) { if (!/^(GET|HEAD|OPTIONS|TRACE)$/i.test(settings.type) && !this.crossDomain) { xhr.setRequestHeader("X-CSRFToken", csrfToken) } } }) ``` 注意csrf token的获取方式: 在Jinja2的页面中的模板的head部分设置 `<meta name="csrf-token" content="{{ csrf_token() }}">`,在使用是可以通过js代码直接获取
分享
×
用手机扫码分享
没有评论
请登陆后评论
新建评论
移除
关闭
提交