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

GET 和 POST请求的本质区别是什么

GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。...GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。 GET请求在URL中传送的参数是有长度限制的,而POST么有。...GET参数通过URL传递,POST放在Request body中 但实际上,GET和POST本质上是没有区别的。 GET和POST本质上没有区别 GET和POST是什么?...HTTP协议中的两种发送请求的方法。 HTTP是什么?HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。 HTTP的底层是TCP/IP。...所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。 GET和POST能做的事情是一样一样的。

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

    『Django』视图views

    在 Django 中,主要有两种类型的视图: FBV:基于函数的视图 CBV:基于类的视图 FBV(Function-Based Views)和CBV(Class-Based Views)是两种处理视图的方式...要使用视图需要2步,第1步是先创建一个路由指向视图函数,第2步是创建视图函数。 FBV:函数视图 FBV(Function-Based Views)是基于函数的视图方式。...它是一种简单直观的方式,使用Python 函数来处理 HTTP 请求并返回响应。在FBV中,每个视图都是一个独立的 Python 函数,接收 HTTP 请求对象作为参数,并返回 HTTP 响应对象。...在函数视图中,通过解析 request 这个参数可以获取到客户端发起的请求方法(通常是 GET 和 POST)。...POST': return HttpResponse('使用了POST请求') 前面演示的都是通过 函数视图 来处理请求和响应,其实用 类视图 处理会更方便。

    11310

    Django学习笔记之CBV和FBV

    FBV FBV(function base views) 就是在视图里使用函数处理请求。 在之前django的学习中,我们一直使用的是这种方式,所以不再赘述。...CBV CBV(class base views) 就是在视图里使用类处理请求。 Python是一个面向对象的编程语言,如果只用函数来开发,有很多面向对象的优点就错失了(继承、封装、多态)。...request的method的不同调用相应的方法来处理request(如get() , post()等)。...在django1.3之前,generic view也就是所谓的通用视图,使用的是function-based-view(fbv),亦即基于函数的视图。...cbv的实现原理通过看django的源码就很容易明白,大体就是由url路由到这个cbv之后,通过cbv内部的dispatch方法进行分发,将get请求分发给cbv.get方法处理,将post请求分发给cbv.post

    97310

    Django中请求的生命周期

    Django的请求生命周期是指当用户在浏览器上输入url到用户看到网页的这个时间段内,Django后台所发生的事情 而Django的生命周期内到底发生了什么呢?? 1....当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中. 2. url经过Django...FBV模式和CBV模式 一个url对应一个视图函数,这个模式叫做FBV(Function Base Views) 除了FBV之处,Django中还有另外一种模式叫做CBV(Class Base views...2.1 fbv方式请求的过程 用户发送url请求,Django会依次遍历路由映射表中的所有记录,一旦路由映射表其中的一条匹配成功了, 就执行视图函数中对应的函数名,这是fbv的执行流程 2.2 cbv...Django请求生命周期之响应内容 http提交数据的方式有"post","get","put","patch","delete","head","options","trace".

    2.7K100

    python测试开发django-73.django视图 CBV 和 FBV

    前言 FBV(function base views) 就是在视图里使用函数处理请求,这一般是学django入门的时候开始使用的方式。...面试的时候基本上都是问到:你平常写的视图是基于函数的视图 (FBV),还是基于类的视图 (CBV),两者的区别在哪? 如果你只会写基于函数的视图,那说明还处于初级入门的阶段了。...FBV 模式 FBV(function base views)在views.py文件中定义视图函数来处理用户请求,函数中通过 if 判断 request.method 请求方式是 GET 还是 POST...(class base views) 就是在视图里使用类处理请求 自定义的类必须继承 View 父类 提高了代码的复用性,可以使用面向对象的技术,比如 Mixin(多继承) 可以用不同的函数针对不同的...HTTP 方法处理,而不是通过很多if判断,提高代码可读性 CBV 模式继承的View类提供了多种请求方式对应的响应函数不需要在进行判断,可以直接在子类重写继承的方法 CBV 模式子类继承重写父类请求方式的响应函数通过父类

    53610

    Django的请求生命周期

    Django的请求生命周期是指当用户在浏览器上输入url到用户看到网页的这个时间段内,Django后台所发生的事情 而Django的生命周期内到底发生了什么呢?? 1....当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中. 2. url经过Django...FBV模式和CBV模式 一个url对应一个视图函数,这个模式叫做FBV(Function Base Views) 除了FBV之处,Django中还有另外一种模式叫做CBV(Class Base views...2.1 fbv方式请求的过程 用户发送url请求,Django会依次遍历路由映射表中的所有记录,一旦路由映射表其中的一条匹配成功了, 就执行视图函数中对应的函数名,这是fbv的执行流程 2.2 cbv...Django请求生命周期之响应内容 http提交数据的方式有"post","get","put","patch","delete","head","options","trace".

    55320

    类视图 vs. 函数视图

    类视图 vs. 函数视图 Posted December 12, 2018 ? #Coding 基于类的视图(CBV)和基于函数的视图(FBV)到底有什么区别? 有什么优缺点? 本篇将会去探讨。...调用后, 视图将请求传递给dispatch() 方法,该方法将根据请求的类型(GET, POST, PUT, etc)执行响应的方法(详情参考django/views/generic/base.py,..., 这一切取决于你的项目背景和需求以及对以后代码扩展性的考虑.正如我开头提到的, 基于类的视图不会取代基于函数的视图, 有些情况下基于函数视图更容易实现, 有些时候繁琐的需求变更及代码复用你选择基于类视图更好...又假如你要实现一个复杂的请求, 如一次处理多个表单,基于函数的视图的灵活性将更好为你服务....FBV代码是显式的, CBV代码大多数都是隐式的。所以FBV 容易阅读, CBV 难于阅读。 通用视图(GV)虽然封装更加具体, 但无法处理更宽泛的情况.

    2.5K10

    Django 视图 之FBV与CBV

    Django 视图之FBV 与 CBV FBV(function base views) 基于函数的视图,就是在视图里使用函数处理请求 CBV(class base views) 基于类的视图,就是在视图里使用类处理请求...other方法") # 访问 http://127.0.0.1:8000/login/ 返回:---》GET 方法 CBV 基于类的视图,就是使用了类来处理用户的请求,...不同的请求我们可以在类中使用不同方法来处理,这样大大的提高了代码的可读性; 基于类的视图实现主要还是通过父类 View 提供的一个静态方法 as_view() ,as_view 方法是基于类的外部接口,...他返回一个视图函数,调用后请求会传递给 dispatch 方法,dispatch 方法再根据不同请求来处理不同的方法。...,views.view,因为Func2.as_view()的返回值是view,这样看起来CBV基于类的本质也是基于函数,在满足func2的情况下触发视图函数,源码展示如下: @classonlymethod

    35710

    WEB框架本质和第一个Django实例

    Django Django是什么 Django是一个开放源代码的Web应用框架,由Python写成。采用了MT‘V的框架模式,即模型M,模板T和视图V。...当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中. 2. url经过Django...FBV模式和CBV模式 FBV 一个url对应一个视图函数,这个模式叫做FBV(Function Base Views) CBV CBV(Class Base views),即一个url对应一个类 例子...fbv方式请求的过程 用户发送url请求,Django会依次遍历路由映射表中的所有记录,一旦路由映射表其中的一条匹配成功了, 就执行视图函数中对应的函数名,这是fbv的执行流程 cbv方式请求的过程...def index(request): # 业务逻辑代码 return redirect("/home/") Django基础注意事项 1:get和post的应用场景 访问网站的时候用

    1.6K40

    Django之views系统

    Django的View(视图)简介 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。...这个视图会返回一个HttpResponse对象,其中包含生成的响应。每个视图函数都负责返回一个HttpResponse对象。 Django使用请求和响应对象来通过系统传递状态。...CBV和FBV 我们之前写过的都是基于函数的view,就叫FBV。还可以把view写成基于类的。...r'^add_class/$', views.AddClass.as_view()), 给视图加装饰器 使用装饰器装饰FBV FBV本身就是一个函数,所以和给普通的函数加装饰器无差: def wrapper...dispatch()这个方法,如果需要批量对具体的请求处理方法,如get,post等做一些操作的时候,这里我们可以手动改写dispatch方法,这个dispatch方法就和在FBV上加装饰器的效果一样。

    2.2K70

    03.Django基础三之视图函数

    一 Django的视图函数view   一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。   ...视图层,熟练掌握两个对象即可:请求对象(request)和响应对象(HttpResponse) 二 CBV和FBV FBV(function base views) 就是在视图里使用函数处理请求。     ...之前都是FBV模式写的代码,所以就不写例子了。 CBV(class base views) 就是在视图里使用类处理请求。   ...在django1.3之前,generic view也就是所谓的通用视图,使用的是function-based-view(fbv),亦即基于函数的视图。...()这个方法,如果需要批量对具体的请求处理方法,如get,post等做一些操作的时候,这里我们可以手动改写dispatch方法,这个dispatch方法就和在FBV上加装饰器的效果一样。

    5K30

    python 终极篇 --- django

    (类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。...CBV和FBV                                          我们之前写过的都是基于函数的view,就叫FBV。还可以把view写成基于类的。...得到HttpResponse对象,返回django处理 fbv ---   基于函数的视图     cbv ----基于类的视图                                  加装饰器...# 使用CBV时要注意,请求过来后会先执行dispatch()这个方法,如果需要批量对具体的请求处理方法,如get,post等做一些操作的时候,这里我们可以手动改写dispatch方法,这个dispatch...Django会将这个对象自动传递给响应的视图函数,一般视图函数约定俗成地使用 request 参数承接这个对象。 其实request参数就接收了页面请求.

    1.6K10

    Django学习笔记之Django视图View

    这个视图会返回一个HttpResponse对象,其中包含生成的响应。每个视图函数都负责返回一个HttpResponse对象。 Django使用请求和响应对象来通过系统传递状态。...CBV和FBV 我们之前写过的都是基于函数的view,就叫FBV。还可以把view写成基于类的。...r'^add_class/$', views.AddClass.as_view()), 给视图加装饰器 使用装饰器装饰FBV FBV本身就是一个函数,所以和给普通的函数加装饰器无差: def wrapper...dispatch()这个方法,如果需要批量对具体的请求处理方法,如get,post等做一些操作的时候,这里我们可以手动改写dispatch方法,这个dispatch方法就和在FBV上加装饰器的效果一样。...Django会将这个对象自动传递给响应的视图函数,一般视图函数约定俗成地使用 request 参数承接这个对象。

    1.8K30

    Django进阶篇 Rest framework (一)

    1、FBV fbv 就是在 url 中一个路径对应一个函数。 在视图函数中 2、CBV cbv 就是在 url 中一个路径对应一个类,drf 主要使用 CBV。...在视图函数中 在路由匹配的时候看到 path("image", image.ImageView.as_view()),那这个 as_view() 是什么,既然没有在视图类中定义这个 as_view()...django 源码,路径是 \django\views\generic\base.py 3、django 的请求周期 根据 CBV 和 FBV django 的生命周期可以分两类 FBV:请求通过 uwsgi...CBV:请求通过 uwsgi 网关,中间件,然后进入路由匹配,这里就与 FBV 有区别了,因为不再是视图函数而是视图类,会先经过父类-View 的 dispath 方法,进行请求方法的判断,再分发到视图类的方法...在 drf 中主要使用 CBV,生命周期就变成: 请求通过 uwsgi 网关,中间件,然后进入路由匹配,这里就有区别了,先经过 drf 中-APIView 类中的 dispath 方法(这里假定视图类没有重写

    74330

    GET 和 POST请求的本质区别是什么?原来我的理解一直是错的

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。...你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。 当你在面试中被问到这个问题,你的内心充满了自信和喜悦。...如果我告诉你GET和POST本质上没有区别你信吗? 让我们扒下GET和POST的外衣,坦诚相见吧! GET和POST是什么?HTTP协议中的两种发送请求的方法。 HTTP是什么?...HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。 HTTP的底层是TCP/IP。所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。...我们的大BOSS还等着出场呢。。。 这位BOSS有多神秘?当你试图在网上找“GET和POST的区别”的时候,那些你会看到的搜索结果里,从没有提到他。他究竟是什么呢。。。

    3.6K00
    领券