Python Flask Web 第一课 —— 基本概念和程序的基本结构
1. 初始化
所有的 Flask 程序都必须创建一个程序实例,所谓程序实例,在 Flask 框架下就是,Flask 类的实例对象(instance)。
from flask import Flask
app = Flask(__name__)
Web 服务器使用一种名为 Web 服务器网关接口(Web Server Gateway Interface,WSGI)的协议,把接收自客户端(client)的所有请求(request)都转交给这个对象处理。
2. 路由与视图函数
客户端(例如 web 浏览器)把请求发送给 web 服务器,web 服务器再把请求发送给 flask 程序实例。
程序实例需要知道对每个 url 请求运行哪些代码,所以需要保存一个 URL 与 Python 函数之间的映射关系。处理 URL 和函数之间的关系的程序成为路由。
@app.route('/')
def index():return '<h1>Hello World!</h1>'
而像 index() 这样的函数被称为视图函数(view function),视图函数返回的响应可以是包含 HTML 的简单字符串,也可以是复杂的表单。
如果仔细观察日常所用服务的某些 url 格式,会发现许多地址中都包含可变部分。例如 csdn 上的个人博客地址,http://blog.csdn.net/<用户名>
,用户名是地址的一部分。
Flask 也支持这种形式的 URL,
@app.route('/user/<name>')
def user(name):return '<h1>Hello, %s</h1>' % name
尖括号中的内容就是动态可变部分,任何能匹配静态部分的 URL 都会映射到这个路由上,调用视图函数时,Flask 会将动态部分作为参数传入函数(注意, 尖括号中的内容必须和函数的参数名保持一致)。
路由中的动态部分默认使用字符串,不过也可以使用其他类型定义。Flask 支持在路由中使用 int、float 和 path 类型。path 类型也是字符串,但不把斜线视作分隔符,而将其当做动态片段的一部分。
3. 启动服务器
程序实例app
使用 run 方法启动 Flask 集成的开发 Web 服务器:
if __name__ == '__main__':app.run(debug=True)
服务器启动后,会进入轮询,等待并处理请求,直到程序停止,比如按下 ctrl + c 键。换句话说,程序会阻塞在这里,app.run()
后面的语句不会被执行。
Python Flask Web 第一课 —— 基本概念和程序的基本结构相关推荐
- Python Flask Web 第九课 —— flask 扩展小结
注意,flask 的拓展在较老的版本中,使用的 namespace 为: from flask.ext.** import ** 而新版本的导入方法为: from flask_** import ** ...
- Python Flask Web 第二课 —— 请求-响应循环
1. 请求与请求上下文 Flask 从客户端收到请求(请求对象,比如请求某 URL)时,路由给视图函数处理,视图函数需要访问这些请求对象(它封装了客户端发送的 HTTP 请求),这样才能处理请求. 要 ...
- 计算机课进制笔记,初学Python课程笔记-第一课(计算机基本概念+进制+环境变量)...
这是我第一次写博客,简单地聊聊当下的感受.其实,早在大学期间就有过把自己所学的一些知识点记录在某个平台,可供日后自己复习.只是本人并非计算机专业出身,平时写代码写得不是不多.直到毕业参与工作,从事软件 ...
- Python网络爬虫第一课----Python网络爬虫基础《http和https协议》
Python网络爬虫第一课----Python网络爬虫基础<http和https协议> 一.HTTP协议 1.官方概念: HTTP协议是Hyper Text Transfer Protoc ...
- API接口开发其实特简单,Python Flask Web 框架教程来了
大家好,日常工作中,无论你是数据工程师.数据挖掘工程师,甚至数据分析人员,都不可避免的与他人进行数据交互,API接口提供数据是最常见的形式. 今天我给大家分享 Python Flask Web 框架教 ...
- python Flask logging日志报错“另一个程序正在使用此文件,进程无法访问”
文章目录 1. 问题 2. 代码示例 3. 原因 4. 解决 1. 问题 python Flask logging日志报错"另一个程序正在使用此文件,进程无法访问" 2. 代码示例 ...
- python Flask web 框架 (十七)
Flask 0.Flask简介 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收ht ...
- Python Flask Web框架教程 1 Hellow, World!
原文 Installing Python 如果你的计算机上没有安装Python,请立即安装.如果你的操作系统没有为你提供Python包,你可以从Python官方网站下载安装程序.如果你将Microso ...
- 比我的脸还干的gan货——Python Flask Web 框架入门
Flask是一个轻量级的基于Python的web框架. 本文适合有一定HTML.Python.网络基础的同学阅读. 1. 简介 这份文档中的代码使用 Python 3 运行. 是的,所以读者需要自己在 ...
最新文章
- php数据库html文本,关于php,mysql,html的数字分页和文本_php
- 赋茶计算机基础知识,计算机基础知识选择题_new解析.doc
- 机器学习:KNN算法(MATLAB实现)
- jdk1.8.0_45源码解读——ArrayList的实现
- python 一维数组所有元素是否大于_利用Python进行数据分析(5) NumPy基础: ndarray索引和切片...
- Newbe.McrMirror 1.1.6 发布,助您全速下载 mssql docker 镜像
- Java设计模式学习总结(12)——结构型模式之外观模式
- Bailian4021 最大乘积【序列处理】
- HTML不刷新,改数据
- mkdir命令(转)
- 没想到,快手成了“生产力”
- 扫描隧道显微镜STM功能介绍及用途
- 研发流程——变更流程管控
- VisualStudio Qt开发环境搭建以及Qt moc的讲解
- 能力素质有所欠缺_学有所思,思有所悟,悟有所行
- [bzoj5285][Hnoi2018]寻宝游戏【复杂度分析】
- 单片机:按键调节时钟
- C++常见的三种中文内码转换代码
- OpenCV3学习(9.4)轮廓矩及其匹配(Moments 、HuMoments、matchShape函数)
- Class Proxy
热门文章
- php黑名单绕过,利用最新Apache解析漏洞(CVE-2017-15715)绕过上传黑名单
- 沙市一中2021年高考成绩查询时间,2021年荆州高考状元是谁分数多少分,历年荆州高考状元名单...
- HUE与Mysql的集成
- 转码服务器 作用,转码服务器工作原理介绍.pdf
- 计算机主机系统总线,全国2009年10月高等教育自学考试计算机应用基础试题及答案...
- c语言程序设计备考,《C语言程序设计》复习资料.doc
- 机器学习代码实战——数值计算
- Windows VsCode配置OpenCV、Eigen
- C语言回调函数callback
- 大数据系列2-liunx基础-2基本操作