美文网首页
flask简单应用(1)

flask简单应用(1)

作者: 清风徐来_简 | 来源:发表于2019-06-19 17:43 被阅读0次

一、 基本结构
二、另一种注册路由的方式
三、三种返回方式
四、设置请求方式
五、request中的数据

一、 flask_demo1 基本结构,六行实现 Hello World

from flask import Flask

app = Flask(__name__)  # __name__ 全局标识

'''
1,先执行 app.route('/')-->返回一个decorator
2,@decorator,形成一个闭包,且decorator执行时还可以用'/'这个参数
'''

@app.route('/')
def index():
    return 'Hello World!'

app.run(host='0.0.0.0', port=9527)

二、flask_demo2 另一种注册路由的方式

from flask import Flask

app = Flask(__name__)

def index():
    return 'Hello World'

app.add_url_rule('/',view_func=index)  # 写法1
# app.add_url_rule('/','index',index)  # 写法2

app.run()
app.add_url_rule.png

三、flask_demo3 三种返回方式

from flask import Flask, render_template, redirect

app = Flask(__name__)

@app.route('/')  # 路由必须加上斜杠 /,否则报错
def index():
    return '你好'

@app.route('/baidu')
def home():
    return redirect('https://www.baidu.com')
# 重定向其实就是在响应头中加了一个Location,浏览器见了响应头中有这个键值对,就会再次给这个url发送一次请求
# Location: https://www.baidu.com

@app.route('/tem')
def tem():
    return render_template('hehe.html') # 默认寻找同级目录的templates目录中的html文件

app.run()

四、flask_demo4 设置请求方式

from flask import Flask, request, render_template

app = Flask(__name__)

@app.route('/login', methods=('GET','POST'))  # 不写methods默认支持get,写上methods就按methods里的来,必须是可迭代(元组或列表)(源码中有规定)
def index():
    if request.method == 'POST':
        return '欢迎登陆'
    return render_template('login.html')

app.run()
设置methods.png

五、flask_demo5 request中的数据

from flask import Flask, request

app = Flask(__name__)

# 注意url写法,如果访问的url后面要加?参数,这个视图函数的url后就得加上斜杠/
@app.route('/test/', methods=('POST', 'GET'))
def test():
    met = request.method
    if met == 'POST':
        # 【1.url中带参数时,放进这里】
        print('args-->', request.args)  # args--> ImmutableMultiDict([('token', '12345')])

        # 【2.发送json数据时接收,放进这里】
        print('json-->', request.json)  # json--> {'name': 'zhangsan', 'age': 20}

        # 【3.前端发的数据格式未知时,放进这里】
        print('data-->', request.data)

        # 【4.form表单提交时,放进这里】
        print('form-->', request.form,type(request.form))
        # form--> ImmutableMultiDict([('name', 'ddddd'), ('age', '11')])
        # <class 'werkzeug.datastructures.ImmutableMultiDict'>

        print(request.form.get('name'))

        print(request.form.to_dict())  # {'name': 'ddddd', 'age': '11'}

        # 【5.本次请求的完整url】
        print('url-->', request.url)  # url--> http://127.0.0.1:5000/test/?token=12345

        # 【6.本次请求端口后的,参数前的路径】
        print('path-->', request.path)  # path--> /test/

    return '请看大屏幕'

app.run()

# 使用postmen测试

相关文章

  • flask简单应用(1)

    一、 基本结构二、另一种注册路由的方式三、三种返回方式四、设置请求方式五、request中的数据 一、 flask...

  • flask

    一. 简单应用 1. 安装flask 2. 一个简单的应用 保存为hello.py(文件名不能是flask.py,...

  • Python--Flask 开发Android API接口

    1. Flask介绍 Flask是一个使用 Python 编写的轻量级 Web 应用框架,使用简单操作方便,很适合...

  • flask简单应用

    flask_basic 文件目录结构(非快速创建的flask项目)image.png static: 类似djan...

  • 《Flask Web开发》笔记——第二章 程序的基本结构

    1. 一个简单的Flask程序 一个最简单的flask应用看起来如下,这个程序命名为hello.py: 对于这个应...

  • 在阿里云部署 Flask 应用

    原文首发于CSDN,略有增删 在阿里云部署 Flask 应用 本文简单记录在阿里云部署 Flask 应用的过程。由...

  • flask简单应用(2)

    一、母板include和extend二、jinjia2模板语法三、使用session四、使用flask_sessi...

  • flask简单应用(3)

    一、endpoint,路由命名二、url_for,反向解析三、send_file,打开文件并返回四、jsonify...

  • flask简单应用(4)

    一、初始化配置二、app实例的配置三、before_request、after_request、errorhand...

  • Flask RESTFUL文档

    Flask文档 1. 快速入门(Quickstart) 1.1 最小的Flask应用 1.2 路由(Routing...

网友评论

      本文标题:flask简单应用(1)

      本文链接:https://www.haomeiwen.com/subject/nexlqctx.html