您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

django – XSRF标题未在AngularJS中设置

5b51 2022/1/14 8:23:32 python 字数 2180 阅读 571 来源 www.jb51.cc/python

我正在开发一个DJANGO AngularJS应用程序,其中角度部分不由 django服务. 我设置角度$httpProvider如下: myApp = angular.module('myApp', []) myApp.config(['$httpProvider', function(provider){ provider.defaults.xsrfCookieName = 'c

概述

我设置角度$httpProvider如下:

myApp = angular.module('myApp',[])

myApp.config(['$httpProvider',function(provider){
    provider.defaults.xsrfCookieName = 'csrftoken';
    provider.defaults.xsrfHeaderName = 'X-CSRFToken';
}

然后,在做任何POST之前,我做一个设置cookie的GET.我可以通过Chrome确认Cookie设置为:

set-cookie:csrftoken=hg88ZZFEdLPnwDdN1eiNquA8YzTySdQO; expires=Tue,19-Aug-2014 12:26:35 GMT; Max-Age=31449600; Path=/

(它在Chrome开发人员工具中的资源/ cookies / localhost中可见)

但是,当我做POST时,不会设置X-CSRFToken头

这是Chrome记录的POST:

POST /data/activities/search HTTP/1.1
Host: localhost:14080
Connection: keep-alive
Content-Length: 2
Accept: application/json,text/plain,*/*
Origin: http://localhost:14080
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/28.0.1500.95 Safari/537.36
Content-Type: application/json;charset=UTF-8
Referer: http://localhost:14080/public/html/main.html?codekitCB=398694184.799418
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Cookie: csrftoken=hg88ZZFEdLPnwDdN1eiNquA8YzTySdQO

为什么没有设置标题?我还应该怎么做才能激活这个功能

(注意:如果我手动通过$http()调用中的头文件,则POST请求工作正常.因此问题确实是AngularJS未设置的头文件)

总结

以上是编程之家为你收集整理的django – XSRF标题未在AngularJS中设置全部内容,希望文章能够帮你解决django – XSRF标题未在AngularJS中设置所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶