教育的力量大于天赋的力量。
The power of education is greater than the power of genius. -------伏尔泰
目录
准备条件
1.肯定你得先有python
2.然后你得有flask (没有的话,去pip一下)
pip install flack
3.总得有个像样的文本编辑器写代码吧,我这里用的是小闪电(sublime Text)
windows版
小提示:用windows版本的时候一定要保证,你的主机名称是英文,之前由于是中文,所以失败了
无参请求
from flask import Flask,request
app = Flask(__name__)
@app.route('/abc')
def hello_world():
return 'Hello,World!'
app.run(port=8991,debug=False,host="0.0.0.0")
执行
没有毛病,打开页面
有参get请求
from flask import Flask,request
app = Flask(__name__)
@app.route('/abc',methods=['get'])
def hello_world():
rpt1=request.args.get('rpt1')
return 'Hello, World!'+str(rpt1)
app.run(port=8991,debug=False,host="0.0.0.0")
这里加了个methods,设置为get就是get请求,设置Post就是post请求
post请求(post代码是从官网copy过来的,没有跑过。没用到这个需求)地址:https://dormousehole.readthedocs.io/en/latest/quickstart.html#id2
@app.route('/login', methods=['POST', 'GET'])
def login():
error = None
if request.method == 'POST':
if valid_login(request.form['username'],
request.form['password']):
return log_the_user_in(request.form['username'])
else:
error = 'Invalid username/password'
# the code below is executed if the request method
# was GET or the credentials were invalid
return render_template('login.html', error=error)
Linux版(这里用的CentOS)
这里直接写有参了,还是一样要有环境flask,另外在linux上代码内 指定的端口与host会被无效化(那怎么指定端口,往下看)
from flask import Flask,request
app = Flask(__name__)
@app.route('/fuck123',methods=['get'])
def hello_world():
rpt1=request.args.get('rpt1')
return 'Hello, World!'+str(rpt1)
丢到服务器上
linux上执行命令
export FLASK_APP=test.py
flask run --host=主机ip --port=8992
然后我在本地访问它
后台运行
最后请参照我的另一篇博文让接口后台运行
https://blog.csdn.net/qq_38403590/article/details/103885537
后台脚本shell,需要多添加一个命令export FLASK_ENV=development
#!/bin/bash
echo '加载/hadoop/nlp/getReport.py中'
`export FLASK_APP=/hadoop/nlp/getReport.py`
`export FLASK_ENV=development`
echo '加载完毕'
echo '运行中...'
`flask run --host=192.168.1.152 --port=8992`
警告使用flask,尽量不要部署到正式项目中,经过测试flask 10分钟2000次请求,崩了,昨天晚上还能访问,今天就异常,必须重启才行。