Flask之二:袖珍web服务器

2020-04-21  本文已影响0人  奇奇乌布里
Flask创建的web小巧可爱,最小只要4坨
# run.py

# 1.引入模块
from flask import Flask

# 2.创建实例
app = Flask(__name__)
app.config['JSON_AS_ASCII'] = False  # 防止jsonify后出现中文乱码
app.config['DEBUG'] = True  # 开启调试模式
app.config['ENV'] = 'development'  # 注明当前是调试模式

# 3.绑定路由
@app.route('/')
def index():
    return "初めまして、どうぞよろしくお愿いします"

# 4.启动web
if __name__ == "__main__":
    app.run(port='8090', host='0.0.0.0')
    
# 然后用python运行这个py文件,即可启动
# 这个web服务器不可在生产环境中使用,要换成其他的比如Nginx
跨域访问

如果需要添加对跨域访问的支持, 则需要在response钩子函数上弄一个添加header的代码, 如下(放在主py文件里即可):

# 请求插件, 在所有response之前加入如下header
@app.after_request
def add_header(r):
    r = make_response(r)
    r.headers['Access-Control-Allow-Origin'] = '*'
    r.headers['Access-Control-Allow-Methods'] = 'GET,POST'
    r.headers['Access-Control-Allow-Headers'] = 'x-requested-with,content-type'
    return r
在前台或后台运行Flask web程序
# A.后台运行
# cd到run.py文件夹里
# 开启venv
(venv) ... $ nohup py -u run.py >> log.runpy 2>&1 &
# 启动后台运行并追加日志到log.runpy

# B.前台运行
# cd到run.py文件夹里
# 开启venv
(venv) ... $ py run.py
查询后台程序并关闭
$ ps aux|grep xxx.py  # xxx.py 你的py主程序文件名
# 查询出来后找到pid,比方说是12676:
$ kill 12676
$ kill -9 12676  # -9 骨朵关闭
上一篇 下一篇

猜你喜欢

热点阅读