当前位置: 首页 > news >正文

百度收录方法网站如何优化流程

百度收录方法,网站如何优化流程,建设网站用英文怎么说,自由设计师是什么意思Django请求的生命周期是指: 当用户在浏览器上输入URL到用户看到网页的这个时间段内,Django后台所发生的事情。 直白的来说就是当请求来的时候和请求走的阶段中,Django的执行轨迹。 一个完整的Django生命周期: 用户从客户端发出一条请求以后&#xff…

Django请求的生命周期是指:

当用户在浏览器上输入URL到用户看到网页的这个时间段内,Django后台所发生的事情。

直白的来说就是当请求来的时候和请求走的阶段中,Django的执行轨迹。

一个完整的Django生命周期:

  1. 用户从客户端发出一条请求以后,首先会基于http协议去解析数据并封装,
  2. 然后来到Nginx处理(nginx监听公网ip的某个端口,接到请求后,如果是静态资源,nginx直接获取该资源并返回给用户,如果是动态资源,nginx就将请求转发到uWSGI,使用协议一般是uwsgi),
  3. uWSGI接收到请求以后,通过将http协议转化为WSGI协议,和Django之间进行通信,
  4. 此时,该条请求就真正的来到了后端之上,首先它会经过Django的第一道工序:中间件,(而所谓中间件,简单来说就是请求来和请求走的时候Django增加的一道工序,请求来和请求走的时候都要先经过中间件的处理,因此,也可以将中间件理解为Django提供的额外功能组件),
  5. 在经过中间件以后,来到Django的第二道工序:路由层(urls.py)去筛选匹配符合符合请求命令后缀的地址,
  6. 然后根据匹配到的地址去Django的第三道工序:视图层(views.py)找到对应的视图函数/视图类里的属性,
  7. 之后去到第四道工序:模型层(models.py)通过orm操作去数据库中获取数据,拿到数据以后回到视图层(views.py)里对数据进行处理(序列化和反序列化),
  8. 将处理后的数据返给Django的第五道工序:模板层(Templates),模板层接收到数据后,对数据进行渲染,之后再次经过视图层、路由层、中间件、uWSGI服务器、Nginx代理,
  9. 最后将渲染的数据返还给客户端进行展示。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  1. 浏览器向django服务器发起请求

  2. 路由系统(url.py)

    1. 通过正则匹配url
    2. 交由视图系统(views.py),调用对应的方法处理数据
  3. 中间件

    1. 全局生效(所有方法均需要先由中间件处理)
  4. 视图系统(views.py)

    1. 是否需要根据post get请求, 区分处理方式
    2. 处理数据
    3. 返回结果
  5. templates

    1. 直接返回页面
    2. 数据处理后返回页面
  6. 层层返回给浏览器

简单的说就是:django的生命周期是:前端请求—>nginx—>uwsgi.—>中间件—>url路由---->view视图—>orm---->拿到数据返回给view---->视图将数据渲染到模版中拿到字符串---->中间件—>uwsgi---->nginx---->前端渲染。

Django 请求的生命周期主要分为如下四个阶段:

  1. WSGI 应用的初始化
  2. URL 路由匹配
  3. Django View 函数的执行
  4. 返回响应

接着,我们将逐一对这四个阶段进行详细讲解。

  1. WSGI 应用的初始化

当 WSGI 服务器启动 Django 应用程序时,将调用 Django 的自带 WSGI 应用程序处理器将应用程序加载到内存中,并在内存设定一些全局变量,如 settings,middleware 等。这些全局变量可以由 Django 应用程序和应用程序的中间件共同使用。

其中,settings 是 Django 应用程序中最重要的全局变量。它包含了除了 URL 路由跳转之外的所有应用程序配置信息,例如本地数据库 URL,模板引擎设置,调试开关等。middleware 则是一个提供额外功能的组件,可以对视图函数的请求和响应进行扩展。

以下是 WSGI 应用的初始化的代码段:

def get_wsgi_application():django.setup(set_prefix=False)return WSGIHandler()

get_wsgi_application() 函数用于实例化一个 WSGI 应用程序对象,并返回 WSGI 请求处理器对象。Django 在这里进行重要的初始化操作。

  1. URL 路由匹配

一旦 WSGI 应用程序在内存中设置好了,它将自动提供视图,即 URL 映射到相应的处理程序。在 Django 中,URLs 通过一个名为 urls.py 的文件进行定义和管理。当一个客户端请求到达 Django 时,它将映射到 urlpatterns 变量中的可调用视图函数上。

以下是一个 URL 映射器的示例:

from django.urls import path
from . import viewsurlpatterns = [path('about/', views.about),path('contact/', views.contact),
]

在这里,URL “/about/” 和 “/contact/” 路径将使用 views.about 和 views.contact 函数来处理请求。

在匹配 URL 时,Django 会按顺序依次尝试匹配每个 URL 规则,并使用第一个匹配的 URL 规则。如果没有规则匹配请求的 URL 路径,则 Django 允许你定义一个捕获所有情况的通配符 URL 规则,即使用 path() 函数的 ‘path:’ 参数。

urlpatterns = [path('about/', views.about),path('contact/', views.contact),path('<path:slug>/', views.page_not_found),
]

在这个示例中,Django 将试图匹配 “/about/” 和 “/contact/”,但无论它们能否成功匹配,最终都会跳转到 views.page_not_found 函数上。

  1. Django View 函数的执行

如果 Django 能够正确地将请求 URL 映射到一个视图函数上,则该视图函数将被执行。视图函数是 Django MVC 模型中的控制器,它处理请求并返回响应。

以下是一个视图函数的示例:

from django.shortcuts import renderdef index(request):return render(request, 'index.html')

在这个示例中,index 视图函数将会渲染 index.html 模板,并将结果用 HTTP 响应的形式返回给客户端。

Django 将请求对象作为视图函数的第一个参数传递,并在对象中提供了用于访问请求数据和其他属性的方法和属性。视图函数还可以访问请求参数和其他内置对象(如 settings 和 middleware)。

  1. 返回响应

当视图函数处理请求,并生成响应后,Django 将响应发送回客户端(通常是浏览器)。响应的内容都可以是可选的,Django 可以生成基于文本(HTML,JSON,XML 等)的响应,或者基于非文本(例如使用文件响应)的响应。

Django 提供了一组给用户访问的响应对象,并允许定制 HTTP 响应头。默认情况下,Django 使用 HttpResponse。HttpResponse 接受以下两类参数:

  • content(必选项) - 由视图函数生成的一个字符串。
  • content_type(可选项) - 此响应的内容类型,如 ‘text/html’ 或 ‘application/json’。
http://www.hrbkazy.com/news/45892.html

相关文章:

  • 手机便宜网站建设武汉seo优化公司
  • 做logo专用的网站是哪个友情链接可以随便找链接加吗
  • 为歌手做的个人网站关注公众号一单一结兼职
  • 沧州做网站推广推广专员
  • 著名建筑设计网站网络营销的产品策略
  • 培训机构网站模板表白网页制作免费网站制作
  • 网站建设与管理难学吗windows优化大师可靠吗
  • 展览会网站建设长沙官网seo服务
  • 网站优化员seo招聘百度网盘app下载安装 官方下载
  • 上海网站建设 润win10优化软件哪个好
  • wordpress插件 flyzoo深圳优化公司统高粱seo
  • 开发网站建设百度网站app下载
  • 网站充值链接怎么做推特是谁的公司
  • 网站开发及后期维护重庆高端seo
  • 电商网站开发的流程图百度网盘app下载
  • 视频类网站如何做缓存网络营销案例实例
  • 手机qq钓鱼网站怎么做国外搜索引擎排名百鸣
  • 定制类做网站多少钱网站的开发流程
  • aspnet网站开发技术贵港网站seo
  • 查分网站制作免费域名注册二级域名
  • 网站开发设计课程爱站网站排名查询工具
  • 南通网站制作建设小红书seo是什么
  • haodiaoorg.wordpress南宁seo教程
  • 免费英文网站建设百度快照什么意思
  • 自助建站好吗网络营销课程总结1500字
  • 网站开发详细设计文档最成功的网络营销案例
  • 重庆彼客的网站是谁家做的2022年搜索引擎优化指南
  • 网站打开速度优化域名注册
  • 区总工会网站建设流程百度搜索推广优化师工作内容
  • 教育类网站 前置审批产品推广方案范文500字