Flask 快速上手教程 — 了解与基本使用

这篇具有很好参考价值的文章主要介绍了Flask 快速上手教程 — 了解与基本使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Flask 快速上手教程 — 了解与基本使用

这篇博客是我刚接触 flask,研究文档时的一些记录与体会,希望对各位刚接触 flask 的朋友有所帮助。
且在此篇后,我还会另写一篇关于纯后端的 flask 教程,介绍一下如何使用 flask 创建一个较为完善的纯后端的服务。

在阅读下面的内容前,读者应该具有基础的python知识,且配置好了python环境。

安装 flask:

pip install flask

一、最小应用

一个基于 flask 的最小应用应当如下:

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "<p>Hello, World!</p>"
  1. 首先我们导入了 Flask 类。该类的实例将会成为我们的 WSGI 应用。(WSGI 提供了一个规范,使得不同的 Web 应用程序和服务器可以进行交互,从而实现了在不同环境中运行同一个应用程序的可能性。)

  2. 接着我们创建一个该类的实例。第一个参数是应用模块或者包的名称。 __name__ 是一个适用于大多数情况的快捷方式。有了这个参数, Flask 才能知道在哪里可以找到模板和静态文件等东西。(__name__: 表示当前模块的名字。如果是主模块(即直接运行的脚本),其值为 __main__

  3. 然后我们使用 route() 装饰器来告诉 Flask 触发函 数的 URL 。

  4. 函数返回需要在用户浏览器中显示的信息。默认的内容类型是 HTML ,因此 字符串中的 HTML 会被浏览器渲染。

把它保存为 hello.py 或其他类似名称。请不要使用 flask.py 作为应用名称,这会与 Flask 本身发生冲突。

可以使用 flask 命令或者 python -m flask 来运行这个应 用。你需要使用 --app 选项告诉 Flask 哪里可以找到应用(如果文件名为 app.py 或者 wsgi.py ,那么不需要使用 --app):

flask --app hello run
或
python hello.py

现在在浏览器中打开 http://127.0.0.1:5000/ ,应该可以看到 Hello World! 字样。

如果在使用 flask 命令启动时,还可以添加 --debug 开启调试模式,这样在发生错误的时候,在页面上可以看到错误提示。文章来源地址https://www.toymoban.com/news/detail-705915.html

二、路由及HTTP方法

1、路由

  1. 基础使用
    flask 中使用@app.route()来配置路由,从上面的例子应该看出,当我们访问对应路由的时候,该配置能将请求交由对应函数进行处理,函数的返回值即为请求的响应值:
    @app.route('/')
    def index():
        return 'Index Page'
    
    @app.route('/hello')
    def hello():
        return 'Hello, World'
    
  2. 路由传参
    有时候参数需要通过路由传递,以CSDN的个人主页为例,不同用户的个人主页的URL不同之处在于路由中最后部分,为了能配置并接收参数,可以在配置路由的时候使用<>表示动态路由参数,并使用函数形参接收:
    from markupsafe import escape
    
    @app.route('/user/<username>')
    def show_user_profile(username):
        # show the user profile for that user
        return f'User {escape(username)}'
    
    @app.route('/post/<int:post_id>')
    def show_post(post_id):
        # show the post with the given id, the id is an integer
        return f'Post {post_id}'
    
    @app.route('/path/<path:subpath>')
    def show_subpath(subpath):
        # show the subpath after /path/
        return f'Subpath {escape(subpath)}'
    
    并且,通过使用 converter:variable_name ,可以选择性的加上一个转换器,为变量指定规则:
    Flask 快速上手教程 — 了解与基本使用,flask,python,后端
  3. URL 构建
    url_for() 函数用于构建指定函数的 URL。它把函数名称作为第 一个参数。它可以接受任意个关键字参数,每个关键字参数对应 URL 中的变量。 未知变量将添加到 URL 中作为查询参数:
    from flask import url_for
    
    app = Flask(__name__)
    
    @app.route('/')
    def index():
        return 'index'
    
    @app.route('/login')
    def login():
        return 'login'
    
    @app.route('/user/<username>')
    def profile(username):
        return f'{username}\'s profile'
    
    with app.test_request_context():
        print(url_for('index'))
        print(url_for('login'))
        print(url_for('login', next='/'))
        print(url_for('profile', username='John Doe'))
    
    输出:
    /
    /login
    /login?next=/
    /user/John%20Doe
    
    多用于使用静态资源文件等。
  4. HTTP方法
    @app.route默认只匹配 GET 请求,而如果想要能够匹配别的HTTP方法,或者多种HTTP方法,则可这么做:
    from flask import request
    
    @app.route('/login', methods=['GET', 'POST'])
    def login():
        if request.method == 'POST':
            return do_the_login()
        else:
            return show_the_login_form()
    
    其中导入request后,可以通过其获取当前请求的请求方式,如果携带有请求体,则还可以通过它拿到传参。

到了这里,关于Flask 快速上手教程 — 了解与基本使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • flask基本用法小白教程+按钮跳转到指定页面+python和pip安装(后附)

    1.1 基本程序: 大家可以在pycharm中复制如下代码,先感受一下flask的基本用法: 点击链接可进入浏览器查看程序运行的结果,在127.0.0.1:5000后面添上/test1/等设定的文字,可查看不同函数生成的页面结果。 代码如下: 1.2 交互程序: 先在E盘下建立一个记事本  改后缀为html 把代

    2024年02月17日
    浏览(32)
  • (二十八)Flask之wtforms库【上手使用篇】

    🏆🏆作者介绍:【孤寒者】—CSDN全栈领域优质创作者、HDZ核心组成员、华为云享专家Python全栈领域博主、CSDN原力计划作者 🔥🔥 本文已收录于Flask框架从入门到实战专栏 :《Flask框架从入门到实战》 🔥🔥 热门专栏推荐 :《Python全栈系列教程》、《爬虫从入门到精通系列

    2024年04月17日
    浏览(32)
  • Flask基本教程以及Jinjia2模板引擎简介

    直接看代码吧,非常容易上手: 访问结果展示: jinja2 是 Flask 作者开发的一个模板系统,起初是仿 Django 模板的一个模板引擎,为 Flask 提供模板支持,由于其灵活,快速和安全等优点被广泛使用。当我们开发 Web 应用程序时,通常需要将数据动态地渲染到 HTML 模板中,而 Py

    2024年02月07日
    浏览(26)
  • Flask 学习99-Flask-SocketIO 快速入门与使用

    flask-socketio 为flask应用提供了一个客户端与服务器之间低延迟的双向通讯 官网地址:https://flask-socketio.readthedocs.io/en/latest/intro.html 先安装flask-socketio 说明Flask-SocketIO 与 js版本客户端不匹配,二者不能正常通信。兼容版本说明:https://flask-socketio.readthedocs.io/en/latest/intro.html 我安装

    2024年02月22日
    浏览(37)
  • Python Flask - 快速构建Web应用详解

    本文将详细探讨Python Flask Web服务。我将首先简单介绍Flask,然后将逐步进入Flask中的路由、模板、表单处理以及数据库集成等高级概念,目标是能够让大家了解并掌握使用Flask来创建动态Web应用的技巧。 Flask是一个轻量级的Web服务器网关接口(WSGI)web应用框架。它被设计为易

    2024年02月11日
    浏览(33)
  • flask----内置信号的使用/django的信号/ flask-script/sqlalchemy介绍和快速使用/sqlalchemy介绍和快速使用

    内置信号的使用 有哪些内置信号 自定义信号 # 1 第一步:定义一个自定义 信号 # 2 第二步:写个函数 # 3 第三步:函数跟自己定义信号绑定 # 4 第四步:触发自定义信号---》我们做   信号的作用(信号量--》Semaphore) 信号量 sqlalchemy的原生操作

    2024年02月14日
    浏览(26)
  • (一)Flask简介和快速使用

    关于Python三大Web框架浅谈一嘴: Django、Flask和Tornado三个框架都是Python Web应用的开发框架,虽然它们都能够开发Web应用,但在使用方式、适用领域和处理方式上还是有很多不同的。 Django——专栏地址:《Django框架从入门到实战》 Django是一个 高层次(大而全) 的Python Web框架,

    2024年02月08日
    浏览(21)
  • python后端接口框架Flask的基本用法

    在现代Web开发中,后端接口是十分重要的一部分。它们建立了前端和后端之间的连接,使得数据能够在两者之间传递。Python是一门受欢迎的动态编程语言,它可以用来编写高效且功能强大的后端接口。本文将介绍如何使用Python编写后端接口,以及Python作为后端接口语言的优点

    2024年02月15日
    浏览(25)
  • 使用 docker 快速部署 flask接口服务 一

    以前没有使用过docker,近期需要使用部署自己的服务,因此需要学习,先从简单的使用起来,后面专门整理一篇 如何部署 模型的方法。 理论知识就不说了,网上很多,咱直接上步骤 整理逻辑分为: 基于dockerfile创建镜像 使用 docker-compose 创建容器 后台启动 当然这些步骤完全

    2024年01月17日
    浏览(36)
  • Python Flask教程

    Doc: https://rest-apis-flask.teclado.com/docs/course_intro/what_is_rest_api/ Github: https://github.com/tecladocode/rest-apis-flask-python 最小应用 启动 代码热加载 新建一个文件,名为: .flaskenv , 在文件内开启debug模式。(需要下载doenv)库 1.1 url传参规则 参数规则: string (default) accepts any text without a sla

    2024年01月17日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包