• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >AJAX > django使用ajax post数据出现403错误如何解决

django使用ajax post数据出现403错误如何解决

作者:shangliuyan 字体:[增加 减小] 来源:互联网 时间:2017-05-11

shangliuyan通过本文主要向大家介绍了django使用ajax post数据出现403错误如何解决等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文通过两种方法给大家介绍在django中,使用jquery ajax post数据,会出现403的错误,具体内容请看下文。

方法一:

如果用jQuery来处理ajax的话,Django直接送了一段解决问题的代码。把它放在一个独立的js文件中,在html页面中都引入即可。注意这个js文件必须在jquery的js文件引入之后,再引入即可

$(document).ajaxSend(function(event, xhr, settings) { 
 function getCookie(name) { 
  var cookieValue = null; 
  if (document.cookie && document.cookie != '') { 
   var cookies = document.cookie.split(';'); 
   for (var i = ; i < cookies.length; i++) { 
    var cookie = jQuery.trim(cookies[i]); 
    // Does this cookie string begin with the name we want? 
    if (cookie.substring(, name.length + ) == (name + '=')) { 
     cookieValue = decodeURIComponent(cookie.substring(name.length + )); 
     break; 
    } 
   } 
  } 
  return cookieValue; 
 } 
 function sameOrigin(url) { 
  // url could be relative or scheme relative or absolute 
  var host = document.location.host; // host + port 
  var protocol = document.location.protocol; 
  var sr_origin = '//' + host; 
  var origin = protocol + sr_origin; 
  // Allow absolute or scheme relative URLs to same origin 
  return (url == origin || url.slice(, origin.length + ) == origin + '/') || 
   (url == sr_origin || url.slice(, sr_origin.length + ) == sr_origin + '/') || 
   // or any other URL that isn't scheme relative or absolute i.e relative. 
   !(/^(\/\/|http:|https:).*/.test(url)); 
 } 
 function safeMethod(method) { 
  return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method)); 
 } 
 if (!safeMethod(settings.type) && sameOrigin(settings.url)) { 
  xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')); 
 } 
}); 
</div>

方法二:

在处理post数据的view前加@csrf_exempt装饰符

例如

@csrf_exempt 
def profile_delte(request): 
 del_file=request.POST.get("delete_file",'')
</div>

以上通过两种方法跟大家介绍了django使用ajax post数据出现403错误,希望对大家有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-05-11Ajax提交表单页面刷新很快的解决方法
  • 2017-05-11Ajax请求中的异步与同步,需要注意的地方说明
  • 2017-05-11AJAX 随记
  • 2017-05-11AJAX提交表单数据实例分析
  • 2017-05-11如何利用jQuery post传递含特殊字符的数据
  • 2017-05-11如何使用ajax开发web应用程序第1/2页
  • 2017-05-11jQuery中ajax - post() 方法实例详解
  • 2017-05-11AJAX实现简单的注册页面异步请求实例代码
  • 2017-05-11ajax跨域请求js拒绝访问的解决方法
  • 2017-05-11使用ajax和history.pushState无刷新改变页面URL示例

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ajax实现三级联动的基本方法
    • Ajax serialize() 表单进行序列化方式上传文件
    • 简单实现Ajax无刷新分页效果
    • MPBrowser简易图片浏览器 v1.0
    • Boa服务器下的ajax与cgi通信
    • Ajax实现静态刷新页面过程带加载旋转图片
    • AJAX客户端说明,XMLHttpRequest对象
    • jQuery Ajax的readyState和status的区别和使用详解
    • 服务端配置实现AJAX跨域请求
    • 利用XMLHTTP实现的二级连动Select

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有