javascript - angularjs的$http请求400错误

 jtzhn_146_607 发布于 2022-11-28 09:44

经过对比angularjs的$http和JQ的ajax请求头,发现$http缺少了X-Requested-With和X-CSRF-Token,但是ajax是怎么获取X-CSRF-Token的,谁能告诉我!!!

2 个回答
  • 流程大概如此:

    1. 表单需要CSRFToken的时候,先请求获取Token值。

    2. 把值当成表单中的一个隐藏字段一并发送,或者放在Header中。

    但最简单的办法是把CSRFToken写入到Cookie中,即:

    1. 表单需要CSRFToken的时候,先请求获取Token值,由后端将值写入Cookie中。

    如果你不希望是Cookie,比如localStorage的话,可以这样:

    app.config(["$httpProvider",function($httpProvider){$httpProvider.defaults.headers.common['X-CSRF-Token']=localStoorage['csrf-token'];}]);
    2022-11-28 09:53 回答
  • mainApp.config(['$httpProvider',function($httpProvider){$httpProvider.defaults.headers.common['X-Requested-With']='XMLHttpRequest';$httpProvider.defaults.headers.common['X-CSRF-Token']=$('meta[name="csrf-token"]').attr("content");}]);

    这样算是一种解决方案了

    2022-11-28 09:53 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有