• Django内置的响应类


    在介绍 Django 内置的响应类之前,读者需要了解 HTTP 的响应方式。

    首先:网站的运行原理是遵从 HTTP 协议,分为 HTTP 请求和 HTTP 响应。HTTP 响应方式也称为 HTTP 状态码,分为5中状态:消息、成功、重定向、请求错误和服务器错误。若以使用频率划分,则 HTTTP 状态码可分为:成功、重定向和异常响应(请求错误和服务器错误)。

    其次:在 Django 中,视图函数是通过 return 方式返回响应内容,然后生成相应的网页内容呈现在浏览器上。return 是 Python 的内置语法,用于设置函数的返回值,若要设置不同的相应方式,则需要 Django 内置的响应类,如下所示:

    响应类型 说明
    HttpResponse('Hello world') 状态码200,请求已成功被服务器接收
    HttpResponseRedirect('/') 状态码302,重定向首页地址
    HttpResponsePermanentRedirect('/') 状态码301,永久重定向首页地址
    HttpResponseBadRequest('400') 状态码400,访问的页面不存在或请求错误
    HttpResponseNotFound('404') 状态码404,网页不存在或网页的URL失效
    HttpResponseForbidden('403') 状态码403,没有访问权限
    HttpResponseNotAllowed('405') 状态码405,不允许使用该请求方式
    HttpResponseServerError('500') 状态码500,服务器内容错误
    JsonResponse({'foo':'bar'}) 默认状态码200,响应内容为JSON数据
    StreamingHttpResponse() 默认状态码200,响应内容以流式输出

    不同的响应方式代表不同的 HTTP 状态码,其核心作用是 Web Server 服务器用来告诉浏览器当前的网页请求发生了什么事,或者当前 Web 服务器的响应状态。上述的相应类主要来自于模块   django.http,该模块是实现响应功能的核心。

    希望以上内容对各位有所帮助。

  • 相关阅读:
    IO 模型知多少 | 代码篇
    IO 模型知多少 | 理论篇
    ASP.NET Core 反向代理部署知多少
    ASP.NET Core 借助 Helm 部署应用至K8S
    Orleans 知多少 | 4. 有状态的Grain
    Goodbye 2019,Welcome 2020 | 沉淀 2020
    Orleans 知多少 | 3. Hello Orleans
    集群环境下,你不得不注意的ASP.NET Core Data Protection 机制
    .NET Core 使用 K8S ConfigMap的正确姿势
    ASP.NET Core知多少(13):路由重写及重定向
  • 原文地址:https://www.cnblogs.com/xcbb/p/14678675.html
Copyright © 2020-2023  润新知