Flask框架(1)--基础

Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。

安装:

1
pip install flask           #安装flask

基本使用

复制代码
from flask import Flask

app=Flask(__name__) #创建1个Flask实例

@app.route('/')      #路由系统生成
def first_flask():    #视图函数
    return 'Hello World'  #response


if __name__ == '__main__':
    app.run()              #启动socket
复制代码

动态路由

@app.route('/<name>')

复制代码
app=Flask(__name__)

@app.route('/<name>')  #设置url传参数 
def first_flask(name):  #视图必须有对应接收参数
    print(name)
    return 'Hello World'  #response


if __name__ == '__main__':
    app.run()

# 默认接收字符串类型参数
复制代码

@app.route('/<int:age>')

复制代码
#接收整型数字参数
app=Flask(__name__)
@app.route('/<int:age>/')  #设置url传参数 
def first_flask(age):  #视图必须有对应接收参数
    print(age)
    return 'Hello World'  #response

if __name__ == '__main__':
    app.run()
复制代码

@app.route('/<float:salary>')

复制代码
#接收浮点型型数字参数
app=Flask(__name__)
@app.route('/<float:salary>/')  #设置url传参数
def first_flask(salary):  #视图必须有对应接收参数
    print(salary)
    return 'Hello World'  #response

if __name__ == '__main__':
    app.run()
复制代码

@app.route('/<path:path>')

复制代码
# 接收URL链接类型参数
app=Flask(__name__)
@app.route('/<path:url>/')  #设置url传参数:http://127.0.0.1:5000/http://www.baiu.com/
def first_flask(url):  #视图必须有对应接收参数
    print(url)
    return 'Hello World'  #response

if __name__ == '__main__':
    app.run()
复制代码

指定允许的请求方法

@app.route('/login', methods=['GET', 'POST'])

复制代码
# 指定允许的请求方法
app=Flask(__name__)
@app.route('/<path:url>/',methods=['get']) #只允许get请求
def first_flask(url):
    print(url)
    return 'Hello World'  #response

if __name__ == '__main__':
    app.run()
复制代码

外部可访问的服务器,开启调试

--host=0.0.0.0 --port=5000

 

posted @   明矾  阅读(203)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示