经过一天的研究,终于把 vue-admin-template 模板的 post 请求 和django的api 弄通了 没有了那该死的304报错了

直接贴代码:

在main.js中 我直接给设置了一个 csrf_token 全局变量来接收 csrf 认证的token

  window.csrf_token ='' //声明csrf_token 的全局变量

然后在 api 接口中设置 post方法的 

headers 请求头

headers: { 'Content-Type': 'multipart/form-data', 'X-CSRFToken': csrf_token},
 export function login(data) {
return request({
url: '/api/user/login/',
method: 'post',
headers: { 'Content-Type': 'multipart/form-data', 'X-CSRFToken': csrf_token},
params:{'username':data.username,'password':data.password}
})
}

api接口获取csrf_token的接口方法

import request from '@/utils/request'

export function get_csrf() {
return request({
url: '/api/get_csrf',
method: 'get',
})
}

在系统加载登录页面时 先想后台发送get请求来获取 csrf_token 中的token

methods:{
get_token(){
get_csrf().then(res => {
// console.log(res.token)
csrf_token = res.token //将得到的token 赋值给全局变量
})
}
},
created(){
this.get_token() //获取csrf_token
this.get_user() //获取用户列表
}

这前台页面都设置好了

后台views中  创建 get_csrf 的接口 用来动态获取token

from django.middleware.csrf import get_token

# csrf认证
def get_csrf(request):
# 生成 csrf 数据,发送给前端
csrf_token = get_token(request)
return JsonResponse({'token':csrf_token,'code':200})

这样前台的 所有post的请求 就可以通过csrf认证了

最新文章

  1. 使用Lucene索引和检索POI数据
  2. linux 用户创建、管理、权限分配
  3. SPSS数据分析—信度分析
  4. Galera集群server.cnf参数调整--Innodb存储引擎内存相关参数(一)
  5. AI第一次作业
  6. 1500. Prime Gap 11 月 11日
  7. distributed caching for .net applications
  8. Bootstrap做的HTML页面在本地IE打开正常,放到服务器上显示就不正常了
  9. PowerDesigner16建表在SQL SERVER 2008报 对象名 'sysproperties' 无效。
  10. ASP.NET版Memcached监控工具(转载)
  11. AWR
  12. C#access数据库操作
  13. jQuery Mobile (中)
  14. 轻量级的移动框架--zepto.js
  15. useful urls
  16. 记一次nmap扫描信息收集过程
  17. go框架gin的使用
  18. rpm: /root/anaconda3/lib/liblzma.so.5: version `XZ_5.1.2alpha' not found (required by /lib64/librpmio.so.3)
  19. C# DataReader
  20. JavaScript时间操作工具类

热门文章

  1. matplotlib,seaborn中文乱码问题的解决
  2. WAIC | 奇点云携「酷炫AI应用」亮相2019世界人工智能大会
  3. 信贷建模little tricks
  4. Linux安装完后的调优(linux 6)
  5. RAM子账户登录DMS对库进行管理
  6. SAGE|DNA微阵列|RNA-seq|lncRNA|scripture|tophat|cufflinks|NONCODE|MA|LOWESS|qualitile归一化|permutation test|SAM|FDR|The Bonferroni|Tukey's|BH|FWER|Holm's step-down|q-value|
  7. [LC] 17. Letter Combinations of a Phone Number
  8. 使用apktool反编译apk文件
  9. YY孵化虎牙,陌陌收购探探:你更看好谁?
  10. web压测工具http_load