Python之Flask框架一
flask是一个使用 Python 编写的轻量级 Web 应用框架。轻巧页就意味着他比较简洁,不过见到的MTV框架还是有的,(MVC)但是最重要的还是他的可扩展性很强,对比与Django框架呢,他的灵活度就很高了,可以自己一些设计代码框架。
一、实现一个最简单的web服务器
from flask import Flask, request, render_template
import time # 通过name 初始化application
app = Flask(__name__)
# 添加路由 添加多个路由
@app.route('/hello')
@app.route('/')
# 视图函数control : view function MVC设计模式 负责转发请求,对请求进行处理
def index():
# 获取url中的参数,如果有会获取到 如果没有设置值为None
args = request.args
name = args.get("username")
'''
1.接受参数
2、调用对应的函数去处理数据(model)
3、构建响应结果
'''
# 返回一个html页面
return render_template('test_css.html') if __name__ == '__main__':
# 启动一个服务器 wsgi
app.run(debug=True)
在返回html时要注意把html文件存放在templates文件中,使用到的静态文件存放在static文件中,可以在初始化application时候修改
def __init__(
self,
import_name,
static_url_path=None,
static_folder="static", # 静态文件存放
static_host=None, # 开启服务器端口 默认5000
host_matching=False,
subdomain_matching=False,
template_folder="templates", # html文件存放
instance_path=None,
instance_relative_config=False,
root_path=None,
):
二、路由注册:集中注册
from flask import Flask app = Flask(__name__)
def index():
return '1'
def login():
return '2'
# 集中注册方法 view_func 指定视图函数
app.add_url_rule('/index', view_func=index)
app.add_url_rule('/login', view_func=login)
if __name__ == '__main__':
app.run()
三、路由重定向
from flask import Flask app = Flask(__name__)
# flask中 /login和 /login/ 对待成两个不同的url redirect_to 强制重定向到/
@app.route("/login", redirect_to="/")
# 此时访问/login/ 会404
def login():
return 'login1' @app.route("/")
def index():
return 'index' @app.route("/login/")
# 此时访问/login 会返回成功 永久重定向 308 到/cases/
def login_1():
return 'login2/' if __name__ == '__main__':
app.run()
四、获取动态参数
from flask import Flask,request
app = Flask(__name__)
# 通过尖括号表示变化的内容 注意设置数据类型@app.route("/cases/<int:id>")
# string:id 不能包含斜杠 path:id 可以包含斜杠def get_case(id): return f'{id}'
# defaults 设置默认值 也可以通过视图函数设置
@app.route("/case/<id>", defaults={"id": 3})
def get_case_1(id=None):
id = request.args.get("id")return id if __name__ == '__main__':
app.run()
Python之Flask框架一的更多相关文章
- Python基于Flask框架配置依赖包信息的项目迁移部署小技巧
一般在本机上完成基于Flask框架的代码编写后,如果有接口或者数据操作方面需求需要把代码部署到指定服务器上. 一般情况下,使用Flask框架开发者大多数都是选择Python虚拟环境来运行项目,不同的虚 ...
- python之Flask框架
一.简单的Flask框架 1)flask简介 Flask 是一个 web 框架.也就是说 Flask 为你提供工具,库和技术来允许你构建一个 web 应用程序. 这个 wdb 应用程序可以使一些 we ...
- 使用Python的Flask框架,结合Highchart,动态渲染图表(Ajax 请求数据接口)
参考链接:https://www.highcharts.com.cn/docs/ajax 参考链接中的示例代码是使用php写的,这里改用python写. 需要注意的地方: 1.接口返回的数据格式,这个 ...
- Python的Flask框架入门-Ubuntu
全文请见tuts code:An Introduction to Python's Flask Framework Flask是Python一个小而强大的web框架.学起来简单,用起来也容易,能够帮你 ...
- Python之Flask框架项目Demo入门
Python+Flask框架项目Demo入门 本例子用到了 Flask+蓝图+Flask-Login+SQLAlchemy+WTForms+PyMySQL相关架构 Flask Web框架介绍 Flas ...
- Python 的 Flask 框架安装应用
Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱採用 Werkzeug ,模板引擎则使用 Jinja2 ,使用 BSD 授权. Flask也被称为 " ...
- Python之Flask框架使用
Flask和Django.Bottle号称Python中的强大又简单的Web框架. Flask是一个使用Python编写的轻量级Web应用框架.基于Werkzeug WSGI工具箱和Jinja2 模板 ...
- Python之flask框架2
Flask是一个Python编写的Web 微框架,让我们可以使用Python语言快速实现一个网站或Web服务.本文参考自Flask官方文档,大部分代码引用自官方文档. 安装flask 首先我们来安装F ...
- [Python自学] Flask框架 (1) (Flask介绍、配置、Session、路由、请求和响应、Jinjia2模板语言、视图装饰器)
oldboy:s9day114 参考博客:https://www.cnblogs.com/wupeiqi/articles/7552008.html 一.Flask简介 1.安装Flask pip i ...
- Python的Flask框架开发RESTful API
web框架选择 Django,流行但是笨重,还麻烦,人生苦短,肯定不选 web.py,轻量,但据说作者仙逝无人维护,好吧,先pass tornado,据说倡导自己造轮子,虽然是facebook开源的吧 ...
随机推荐
- stl的stack在开发中的应用
栈有后进先出特点,我们可以用它来暂时保存数据,在画板开发中,我用到了栈来保存用户的每一步操作,当用户点击撤销时可以把图像从栈里面取出,然后恢复.浏览器的前进和后退也是这个原理,只是它保存的是网页罢了. ...
- python selenium(键盘事件 Keys 类)
1.导入Keys类 from selenium.webdriver.common.keys import Keys Keys.BACK_SPACE 删除输入框内结尾的单个字符 Keys.SPACE ...
- 惠普 HP Pavilion 15 Notebook PC清灰教程总结 惠普g4系列清灰加内存条教程
最近天气热的电脑都受不了,风扇总是异响,声音很大,感觉是散热不行了,就把电脑清一下灰,虽然之前也清过,但是基本都忘记了,机子比较老,找不到具体教程,清灰过程中因为不熟悉有点费劲,手动记录一下,方便下次 ...
- electron-vue 运行项目时会报Electron Security Warning (Node.js Integration with Remote Content)警告
使用electron-vue时,运行项目总会出现如下警告: 解决方法:在src/renderer/main.js中加入: process.env['ELECTRON_DISABLE_SECURITY_ ...
- P1220 关路灯(提高+)
以下内容转自z2415445508 只是为了方便自己复习而已 题目传送门-->关路灯 我是一条憨憨的分割线 关灯不需要额外的时间,经过了灯就关了.但是可能折返回去关某一个大灯会比继续往下走关接下 ...
- 常用linux命令学习记录
批量替换文件中字符串: sed -i "s/ITSApi/icallApi/g" `grep ITSApi -rl icallbiz` 解释: 将icallbiz目录文件中包涵的I ...
- 【Hadoop离线基础总结】Hue与Impala集成
Hue与Impala集成 1.修改hue.ini配置文件 [impala] server_host=node03 server_port=21050 impala_conf_dir=/etc/impa ...
- 【Hadoop离线基础总结】Sqoop常用命令及参数
目录 常用命令 常用公用参数 公用参数:数据库连接 公用参数:import 公用参数:export 公用参数:hive 常用命令&参数 从关系表导入--import 导出到关系表--expor ...
- STM32 CubeIDE无法进行调试的问题
解决了由于一个很容易忽视的细节最终导致系统配置存在错误造成STM32 CubeIDE无法进行调试的问题: 文章目录 来龙去脉 解决方案 反思 来龙去脉 在享受CubeIDE快速和便捷的服务之后,生成了 ...
- springBoot第二种配置文件yaml书写方式及读取数据、整合myBatis和整合junit
一.yaml文件格式:key-value形式:可以表示对象 集合 1.语法:key:value 冒号后面必须跟一个空格再写value值 key1: key2: key3:value 2.属性取值:a. ...