首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django 2.1.7 处理ajax请求、GET、POST请求

需求问题 在业务处理的工作中,在同一个视图处理上,可能会有普通的GET、POST请求,还会有ajax请求。 那么怎么在处理这些请求的时候做上区分呢?...视图函数: 同时存在GET,POST,Ajax处理 def test(request): if request.method == 'GET': ......这是一种前面文章Django 2.1.7 类视图中,在介绍类视图的时候说明了一个视图函数如何在同一个url情况下处理GET以及POST请求。 那么这里就是增加上了同时处理ajax的请求。...return JsonResponse({'resCode':'0'}) 其实如果没有那么多不同类型的请求,直接根据ajax的请求类型继续GET和POST处理即可。...类视图:同时存在GET,POST,Ajax处理 class TestView(View): def get(self,request): if self.request.is_ajax

1.5K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django 中使用 ajax 请求的正确姿势

    思路整理 在 django 中使用 ajax 其实就是在前端代码中(一般是 js 中)使用 ajax 调用 django 的接口,然后去更新指定的页面部分。...ajax 的请求过程以及请求前后要做的事件都写到函数中,然后单独放到 js 文件中 ajax 发请求的本质就是调用 django 的接口,所以 django 的 URL 中需要提供接口 django...小结:我对于使用 ajax 函数的理解思路比较简单,第一步是提取表单或者页面的标签中参数,然后处理和判断参数,当参数合法的时候开始执行请求,请求之前可以设置一下 csrfmiddlewaretoken...利用缓存 由于我的在线工具大多数都是使用的爬虫技术,而爬虫都是调用的其他网站的接口,特别是刚添加的这个官方镜像仓库的查询接口属于外网,即使使用阿里云的服务器,调用接口的时候也比较慢,而且经常出现连接超时的现象...在 Django 提供接口给 ajax 的时候最好做到严格按照不同的返回码返回不同的信息 ajax 在请求接口完成之后,可以根据返回码的判断来执行不同的事件 比较耗时的请求可以使用缓存 版权声明:如无特殊说明

    2K10

    Ajax发送PUTDELETE请求时出现错误的原因及解决方案

    .而其他的,根据单词并不能准确的知道他们想表达的意思.本文要讲的并不是HTTP协议,主要是分析一下发送Ajax(异步请求)的时候,为什么使用GET和POST方式发送可以接收到数据,而使用DELETE和PUT...一般情况下,我们使用Rest风格的URI时,也就是使用HTTP协议请求方式的动词,来表示对资源的操作(GET(查询),POST(新增),PUT(修改),DELETE(删除)),常常会出现这个问题....使用Ajax发送PUT(修改)请求 我们测试使用的是一个更新方法,利用主键更新员工的信息,使用特定的PUT请求....方法和POST肯定是不一样的,最后只能是返回.于是就出现了上面的情况....请求的时候,使用如下的格式: $.ajax({ url: "${pageContext.request.contextPath}/emp/" + id, type: "POST",

    2.3K10

    Django的POST请求时因为开启防止csrf,报403错误,及四种解决方法

    Django默认开启防止csrf(跨站点请求伪造)攻击,在post请求时,没有上传 csrf字段,导致校验失败,报403错误 解决方法1: ? 注释掉此段代码,即可。...缺点:导致Django项目完全无法防止csrf攻击 解决方法2: 在 views.py文件中 #导入,可以使此次请求忽略csrf校验 from django.views.decorators.csrf...import csrf_exempt #在处理函数加此装饰器即可 @csrf_exempt def post(request): name=request.post['name']...{}'.format(name)) 缺点:导致此次请求无法防止csrf攻击,但是比第一种好很多 解决方法3: 针对使用模版进行开发的MTV模式,在模版文件提交form表单代码中添加  ?...但是本人不使用MTV模式进行开发,只使用 Restful模式,所以对于Restfu模式开发的,使用第四种解决方法。

    3.3K30

    使用AJAX获取Django后端数据

    但是如果我们只想更新页面的一部分,则不必完全重新渲染页面-这时候就要用到AJAX了。 AJAX提供了一种将GET或POST请求发送到Django视图并接收任何返回的数据而无需刷新页面的方法。...根据Django项目的URLconf和视图的配置方式,URL可能包含关键字参数或查询字符串,我们希望在视图中使用该参数来选择请求的数据。 Headers 设置AJAX请求头参数。...现在,我们可以使用JavaScript使用GET请求中的数据来更新页面的一部分。 POST请求 通过提取发出POST请求 带GET的POST请求比GET请求需要更多的参数。...如果尝试通过直接在浏览器中键入URL来访问此视图,则会收到错误消息。可以向视图中添加其他逻辑(例如重定向),以防止用户尝试在没有AJAX请求的情况下访问视图时看到错误。...总结 通过在Django项目中使用AJAX请求,我们可以更改页面的某些部分而无需重新加载整个页面。提取API使添加此功能相当轻松,同时需要最少的JavaScript。

    7.6K40

    Django CSRF认证的几种解决方案

    Django使用CsrfViewMiddleware中间件进行CSRF校验,默认开启防止csrf(跨站点请求伪造)攻击,在post请求时,没有携带csrf字段,导致校验失败,报403错误。...csrf_token %} 一定要注意后端使用render而不要使用render_to_response进行渲染,这样前端就会有csrf_token变量,前端cookies中也会出现...这种方式只限制在form表单中使用,ajax请求不支持。 3....指定请求去掉CSRF校验 可以只针对指定的路由去掉CSRF校验,这也分为两种情况: FBV:用函数实现路由处理 # 导入,可以使此次请求忽略csrf校验 from django.views.decorators.csrf...因为我们是使用Django模板渲染前端页面的,所以一般会先定义一个base.html,其他页面通过{% extends "base.html" %}来引入使用,那么在base.html中添加ajax的全局钩子

    2K20

    Django-choices字段值对应关系(性别)-MTV与MVC科普-Ajax发json格式与文件格式数据-contentType格式-Ajax搭配sweetalert实现删除确认弹窗-自定义分页器

    目录 models 字段补充 choices 参数/字段(用的很多) MTV与MVC模型 科普 Ajax 发送 GET、POST 请求的几种常见方式 用 Ajax 做一个小案例 准备工作 动手用 Ajax...GET/POST ajax 提交 GET/POST 下面主要通过 ajax 来发送请求 ajax 这门技术是 Javascript 中的,但是原生的...,在第三个框中自动填写两数之和 咱们这里是 jQuery 的 ajax,别忘了先引入 jQuery 准备工作 新建一个项目,完成基本配置 因为要用到 post 请求,所以先暂时把 settings...request.is_ajax() 用来判断当前请求方式是否是 ajax 请求(不管是 get 还是 post ,只要是 ajax 提交的,都能识别出来) 通过 ajax 提交的 post 请求,标签没有...:前后端传输数据的时候,一定要保证数据格式和你的编码格式是一致的,不能乱来,不然不好拿数据 ajax 提交数据 ajax 默认数据提交方式也是 urlencoded 不符合格式就不要了,前后端编码和数据格式一致就不会出现这个问题

    6.3K31

    Hcode网站的搭建日记(四)Ajax实现阅读量统计

    传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。 有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。...利用Ajax异步请求,将数据传到Django后端。 之后获取Django后端查询数据库获取各id对应博文的浏览量。 最后分别将浏览量数据写入每篇博文框里面。 请求的内容如下: ?...$.ajax({ type: "post",//请求的类型 url: "/ajax/home", //请求的后端处理路径 contentType...对象 xhr.open("post", "/ajax/home"); //请求的后端处理路径 xhr.setRequestHeader("Content-Type", '...id数据,后端的数据查询数据库后需要更新数据(阅读量+1) Ajax的POST请求的内容如下: ?

    63810

    Django实战-信息资讯-Ajax 实现注册

    Django网络应用开发的5项基础核心技术包括模型(Model)的设计,URL 的设计与配置,View(视图)的编写,Template(模板)的设计和Form(表单)的使用。...前一篇使用 Django 自带的 form 表单直接渲染到前端生成注册表单,而且对注册表单里的字段进行了再次验证判断,重写 clean 方法 is_valid。 ?...在使用 ajax 进行请求注册前,需要定义数据格式,通过 json 进行数据通信。而对于不同请求返回后的参数不同,需要单独定义请求时,需要返回的数据格式。...① 定义请求返回数据 不管是 POST 请求,还是 GET 请求,通过 ajax 返回的都需要是 json 数据格式。...通过 ajax 调用 post 方法 ? js 封装请求 ? ?

    1.2K20

    Python进阶34-Django 中间件

    这个方法只有在视图函数中出现异常了才执行,它返回的值可以是一个None也可以是一个HttpResponse对象。...Md2返回 Md1返回 流程图如下: 当views出现错误时:  ** 将md2的process_exception修改如下:** def process_exception(self,request...但是,在一个网站中,可以接受请求的地方非常多,要对于每一个请求都加上 token 是很麻烦的,并且很容易漏掉,通常使用的方法就是在每次页面加载时,使用 javascript 遍历整个 dom 树,对于...,每次都要注释掉的那个,也就是说,它每次都会拒绝我们的post请求,就是为了防止CSRF工具,从今以后我们不注释它,直接带着这个中间件的token去做post请求即可。.../禁用CSRF ---- AJAX使用CSRF 引入JQuery ajax/libs/jquery/3.5.1/jquery.min.js

    1.8K20

    Django跨域验证及OPTIONS请求

    最近做的一个需求是:有两个后端服务器,一个是老项目(django),一个是新项目(djangorestframework),老项目不能做大的改动,只能在新项目进行修改,并且前端只能使用老项目的。...新后端是使用jwt认证方式,使用Django用户模块保存用户信息。以上是需求的前提,现在要做的是在老项目登录成功后,在前端请求新项目接口也能通过用户认证。...跨域验证失败 这里错误的意思是token在Access-Control-Allow-Headers中不识别,我们在使用Django跨域验证时,使用的是django-cors-headers库,其中有一个配置项...于是乎各种搜索 AJAX中出现OPTIONS请求 最全的Ajax跨域详解 跨域资源共享CORS详解 通过以上几篇文章,我知道为什么会变成OPTIONS请求?...第二个请求头出现了我们发送的access-token信息。

    3K10
    领券