協(xié)助測(cè)試小工具:
from flask import Flask, request, jsonify
import logging
logging.basicConfig(level=logging.DEBUG)
app = Flask(__name__)
BASE_URL = '/'
@app.route(BASE_URL, methods=['GET'])
def geng():
result = {
'msg': "welcome,test!"
}
# 返回json
return jsonify(result)
@app.route(BASE_URL + "head", methods=['POST'])
def head():
global response
headers = request.headers
header = {}
for k, v in headers.items():
header[k] = v
# # response['headers'] = headers
# app.logger.info(request.method)
# app.logger.info(request.form)
# # app.logger.info(request.json)
# app.logger.info(request.data)
# app.logger.info(request.headers)
# app.logger.info('==============')
response = {'headers': header, 'method': request.method}
try:
response['json'] = request.json
except Exception as e:
# app.logger.info('err:' + str(e))
response['form'] = str(request.form)
response['data'] = str(request.data)
response['args'] = str(request.args)
finally:
app.logger.info(response)
return jsonify(response)
@app.route(BASE_URL + 'test/mad', methods=['GET'])
def test_getllh():
# 解析請(qǐng)求參數(shù)
# param = request.args.to_dict()
result = {
'msg': "welcome,test!"
}
# 返回json
return jsonify(result)
@app.route(BASE_URL + 'test', methods=['GET'])
def test():
# 解析請(qǐng)求參數(shù)
param = request.args.to_dict()
result = {
'msg': "welcome,test!",
'param': param
}
# 返回json
if param:
result_json = result
else:
result_json = {
'code': '-1', 'msg': "缺少參數(shù)"
}
return jsonify(result_json)
@app.route(BASE_URL + 'get/test', methods=['GET'])
def test_get():
# 解析請(qǐng)求參數(shù)
param = request.args.to_dict()
result = {
'msg': "welcome,test!"
}
# 返回json
if param:
return jsonify(param)
else:
return jsonify(result)
# 接收get請(qǐng)求
@app.route(BASE_URL + 'api/get/test_welcome', methods=['POST'])
def test_get_test():
# 解析請(qǐng)求參數(shù)
param = request.args.to_dict()
name = param['name']
result = {
'msg': "welcome! " + name
}
# 返回json
return jsonify(result)
# 接收post請(qǐng)求
@app.route(BASE_URL + 'api/post/test', methods=['POST'])
def test_post_test():
# 解析請(qǐng)求參數(shù)
# data = request.get_data()
# json_data = json.loads(data.decode("utf-8"))
# name = json_data['name']
# result = {
# 'msg': "你好哈! " + name
# }
# # 返回json
result = {'msg': u'hello桶蝎,baby'}
return jsonify(result)
@app.route(BASE_URL + 'iflow', methods=['GET'])
def iflow():
# 解析請(qǐng)求參數(shù)
# data = request.get_data()
# json_data = json.loads(data.decode("utf-8"))
# name = json_data['name']
datalist = [{'label': '鍵1', 'value': '值1'}, {'label': '鍵2', 'value': '值2'}, {'label': '鍵3', 'value': '值3'}]
result = {
'msg': 'ok!',
'code': 0,
'data': datalist
}
# # 返回json
# result = {'label': '鍵1', 'value': '值1'}
return jsonify(result)
if __name__ == '__main__':
# print(app.url_map)
handler = logging.FileHandler('flask.log', encoding='UTF-8') # 設(shè)置日志字符集和存儲(chǔ)路徑名字
logging_format = logging.Formatter( # 設(shè)置日志格式
'%(asctime)s - %(levelname)s - %(filename)s - %(funcName)s - %(lineno)s - %(message)s')
handler.setFormatter(logging_format)
app.logger.addHandler(handler)
app.run(debug=True, host='0.0.0.0', port=6125)