python web开发框架有哪些,python web开发框架对比

本文介绍了PythonWeb开发中的主要框架,包括Django(功能全面)、Flask(轻量灵活)和Tornado(非阻塞网络)。重点讲解了Flask框架的使用示例,以及它们在构建动态资源请求和服务端响应中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家好,本文将围绕python web框架主要的三大基本框架展开说明,pythonweb开发框架第三方库是一个很多人都想弄明白的事情,想搞清楚python web开发框架有哪些需要先了解以下几个事情。

Source code download: 本文相关源码

一、WEB应用服务的认知

WEB应用服务基于HTTP协议/规范,实现静态资源和动态资源的请求与处理。

  • 静态资源包括:html网页、图片、样式、java脚本、视频、音频等等python turtle库函数
  • 动态资源包括:通过程序(java/php/python/.net)和数据库(mysql/oracle/sqlsever),根据业务处理流程会动态地生成html,现将html响应给请求(客户端)

HTTP(1.0、1.1、2.0)和HTML的关系:

  • 客户端封闭HTTP请求(HttpRequest),向服务端发起请求

  • 服务端接收请求之后,分析资源请求的路径、请求参数(查询参数、表单参数、json/字节流)

  • 服务端根据资源的请求路径读取文件的内容,并生成字节码数据且封装响应对象(HttpResponse)

  • 客户端接收服务端的响应数据(HttpResponse),判断请求是否成功,如果成功则显示数据(html/json)

WEB应用服务:
1、客户端(Browser浏览器)发出请求(HttpRequest)
2、服务端(Apache/Nginx/PythonWeb)接收请求,根据请求的资源信息,读取文件,并封装到响应对象(HttpResponse)中
3、客户端接收资源,分析资源类型然后渲染并显示出来
另外,WEB应用服务基本HTTP协议,HTTP协议又于TCP/IP协议,因此是安全性连接。
在这里插入图片描述

二、Python Web开发框架

Python本身实现WEB应用服务的接口(规范),便于我们开发动态资源请求,提供的开发模块是wsgiref。此模块是所有其它高级框架中最核心的、最基本的规范,如Flask基于Werkzeug库实现了wsgi通信协议。WSGI:Web Sever Gataway Interface WEB服务网关接口、负责http协议的底层通信。 Python

Python WEB开发框架:

  • Django(组件最全、最强大的框架,主要用于后端服务管理、运维),例如:做后台
  • Flask(小巧的、灵活的框架、可以快速开发API接口),例如:做网站
  • Tornado(基于协程和单线程单进程的框架实现非阻塞的网络框架),例如:在线客服

Flask框架的应用

from flask import Flask

"""
1、创建Flask的服务对象
2、声明请求资源(动态)
3、使用request请求对象(GET),获得请求方法(POST)
4、返回HTML
"""

app = Flask('Hi,Flask!')


@app.route('/hi', methods=['GET', 'POST'])
def hi():
    from flask import request
    if request.method == 'GET':
        return """
    <h1>用户登陆页面</h1>
    <form action="/hi" method="post">
    <input name="username" placeholder="用户名" /><br>
    <input name="password" type="password" placeholder="密码" /><br>
    <button>提交</button>
    </form>
    """
    else:
        # 获取表单数据
        name = request.form.get('username')
        password = request.form.get('password')
        if all((
                name == 'jasmine',
                password == '12345'
        )):
            return """
            <h2 style="color:blue;">登陆成功!</h2>
            """
        else:
            return """
            <h2 style="color:orange;">登陆失败!
            <a href="/hi">请重新登陆</a></h2>
            """


# 启动服务
app.run(host="localhost", port=5000)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值