1.安装flask包
pip install flask
2.flask框架
from flask import Flask,render_template,request, Response
import json
#定义静态文件夹和html文件夹
app = Flask(__name__, static_folder='./static', template_folder='./templates')
app.debug = True
#内容
if __name__ == '__main__':
#指定端口,启动服务
app.run(port=8080, debug=True)
运行框架代码,会在http://127.0.0.1:8080(可指定端口)上启动服务。
3.为url绑定Python函数
#给url(127.0.0.1:8080)绑定一个函数
@app.route('/')
def index():
#返回先前指定template_folder文件夹中的html页面
return render_template("index.html",name='首页')
此时访问 http://127.0.0.1:8080 可调用Python函数index(),返回index.html。
#给url(127.0.0.1:8080/login)绑定一个函数
@app.route('/login', methods=['GET'])
def login():
#url传参
username = request.args['username']
password = request.args['password']
data = {
'username': username,
'password': password
}
data = json.dumps(data)
#返回json数据
return Response(data, content_type="application/json")
发送url为 http://127.0.0.1:8080/login?username=&password= 的GET请求调用login函数,request.args获取url中传递的参数。最后返回json数据。
#给url(127.0.0.1:8080/signup)绑定一个函数
@app.route('/signup', methods=['POST'])
def signup():
#json传参
data = request.get_json()
username = data['username']
password = data['password']
confirm_password = data['confirm_password']
data = {
'username': username,
'password': password,
'confirm_password': confirm_password
}
data = json.dumps(data)
#返回json数据
return Response(data, content_type="application/json")
发送url为 http://127.0.0.1:8080/signup 的POST请求调用signup函数,request.get_json()获取请求载荷。最后返回json数据。
4.完整代码
from flask import Flask,render_template,request, Response
import json
#定义静态文件夹和html文件夹
app = Flask(__name__, static_folder='./static', template_folder='./templates')
app.debug = True
#给url(127.0.0.1:8080)绑定一个函数
@app.route('/')
def index():
#返回html页面
return render_template("index.html",name='首页')
#给url(127.0.0.1:8080/login)绑定一个函数
@app.route('/login', methods=['GET'])
def login():
#url传参
username = request.args['username']
password = request.args['password']
data = {
'username': username,
'password': password
}
data = json.dumps(data)
#返回json数据
return Response(data, content_type="application/json")
#给url(127.0.0.1:8080/signup)绑定一个函数
@app.route('/signup', methods=['POST'])
def signup():
#json传参
data = request.get_json()
username = data['username']
password = data['password']
confirm_password = data['confirm_password']
data = {
'username': username,
'password': password,
'confirm_password': confirm_password
}
data = json.dumps(data)
#返回json数据
return Response(data, content_type="application/json")
if __name__ == '__main__':
#指定端口,如当前为127.0.0.1:8080
app.run(port=8080, debug=True)