- 注册时间
- 2014-1-3
- 最后登录
- 2018-12-25
- 阅读权限
- 10
- 积分
- 364
- 精华
- 0
- 帖子
- 35
|
factory 发表于 2014-6-6 14:26
get方式有传输量限制,交互内容多一点很有问题
所以一般类似表格之类的都是post,
如果miniui能支持csrf,那么post方式下也支持python
用的是python3.4+django1.6.5
http://hi.baidu.com/cly84920/item/7da439ce8e27c80c0ad93a81
http://blog.sina.com.cn/s/blog_634bc2230100q7du.html
Django使用ajax POST表单时,为防止CSRF攻击,会验证csrftoken的值是否有效;如果没有在settings中设置csrf中间件及ajax post requestheader中没有指定csrftoken的话,就会return “403”,是无法post请求的,那么就需要我们手动添加。
--------------------------settings:----------------------------------
MIDDLEWARE_CLASSES = (
'django.middleware.csrf.CsrfMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.csrf.CsrfResponseMiddleware',
)
----------------------------------------------------------------------
------------------------------JS----------------------------------------------------
function getCookie(sName){var aCookie=document.cookie.split("; ");for(var i=0;i<aCookie.length;i++){var aCrumb=aCookie.split("=");if(sName==aCrumb[0])return (aCrumb[1]);}return null;}
var myAjax=
new Ajax.Request('http://192.168.1.100/project/update'{method:'POST',setRequestHeader:{"X-CSRFToken":getCookie('csrftoken')},
parameters:'csrfmiddlewaretoken='+getCookie('csrftoken')+"&Fields="+fileds}) |
|