Web 服务器使用一种名为 Web 服务器网关接口
(Web Server Gateway Interface,WSGI)的协议

初始化flask

所有的flask网站都需要创建一个Flask的实例

from flask import Flask
app = Flask(__name__) #flask类的构造函数必须传入程序主模块或包的名字,所以用__name__
if __name__ == '__main__':
    app.run(debug=True) # 启动服务,并开启debug模式

flask路由

flask应用需要从客户端的url里获得请求,处理url的flask程序是用app.route修饰器,既路由。
静态路由

@app.route('/') #网站根目录
def index(): # 当获得网站根目录的请求时就自动执行这个函数,这个函数被称为视图函数
    return '<h1>Hello Flask!</h1>'

动态路由

@app.route('/user/<name>') # 这里的name可以作为视图函数的参数
def user(name):
    return '<h1>Hello, %s!</h1>' % name

查看路由

from hello import app #从模块中倒入flask类
app.url_map # 查看相应的路由

flask处理请求

from flask import request
@app.route('/')
def index():
    user_agent = request.headers.get('User-Agent') #获得请求的user-agent参数
    return '%s' % user_agent #返回用户的对象

Falsk 使用上下文让特定的变量在一个线程中全局可访问,与此同时却不会干扰其他线程。Flask会生成一个多线程池,然后再分线程来处理不同用户的请求。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐