新建一个flask项目

  1. 新建项目文件夹(需要自己去添加或引用一个虚拟机)
  2. 在项目文件夹下新建通信消息处理的文件夹communication
  3. 在communication下新建获取参数处理的文件webrequest.py,添加代码如下
from flask import request
 
def get_response_json(name):
    try:
        return request.json[name] or None
    except:
        return None

def get_response_args(name):
    try:
        return request.args.get(name) or None
    except:
        return None

def get_response_form(name):
    try:
        return request.form.get(name, type=str, default=None)
    except:
        return None

def get_response_values(name):
    try:
        return request.values.get(name) or None
    except:
        return None

def get_request_str(name,defaultValue=''):
    value = get_response_json(name)
    if value is None:
        value = get_response_args(name)
    if value is None:
        value = get_response_form(name)
    if value is None:
        value = get_response_values(name)
    if value is None:
        value = defaultValue
    return value
  1. 在communication下新建获取参数处理的文件webresponse.py,添加代码如下
 from flask import make_response, jsonify

def response_success_data(qts_data):
    return {
        'qts_result':True,
        'qts_haserr':False,
        'qts_msg':None,
        'qts_data':qts_data
    }

def response_error_data(qts_msg):
    return {
        'qts_result': False,
        'qts_haserr': True,
        'qts_msg': qts_msg,
        'qts_data': None
    }

def make_response_success(qts_data):
    return make_response(jsonify(response_success_data(qts_data)),200)

def make_response_400():
    return make_response(jsonify(response_error_data('请求无效')), 400)

def make_response_401():
    return make_response(jsonify(response_error_data('权限不足')), 401)

def make_response_403():
    return make_response(jsonify(response_error_data('禁止访问')), 401)

def make_response_404():
    return make_response(jsonify(response_error_data('请求不存在')), 404)

def make_response_500(e):
    return make_response(jsonify(response_error_data(e)), 500)
  1. 新建一个项目的前后端通信的接口的文件夹api
  2. 在api下新建子模块的文件,如用来处理登录以及权限的admin,添加代码如下
 # coding=utf-8

from flask import Blueprint
from communication.webrequest import  get_request_str
from communication.webresponse import make_response_success,make_response_500

admin_plugin = Blueprint('admin',__name__,url_prefix='/admin')

@admin_plugin.route('/login',methods=['GET','POST'])
def login():
    try:
        username= get_request_str('username')
        password= get_request_str('password')
        print (qts_uid)
        if username== 'admin' and password== '111':
            return make_response_success('')
        else:
            return make_response_500(’参数错误‘)
    except Exception as e:
        return make_response_500(e)
  1. 在项目的文件夹下新建文件main.py,添加代码如下
 #coding=utf-8
from flask import render_template,Flask
from api.admin import admin_plugin

def register_app(app) :
    app.register_blueprint(admin_plugin)

def index():
    return render_template('index.html')

def register_app_url(app) :
    app.add_url_rule('/', '', index)

def create_app():
    #我用了vue来开发前端,vue代码编译后的文件格式与flask规定的不一致,所以才有static_folder和template_folder的配置
    app = Flask(__name__,static_folder='static',template_folder='')
    register_app_url(app)
    register_app(app)
    return app
  1. 在项目的文件夹下新建文件run.py,用以启动项目,添加代码如下
# coding=utf-8

from main import create_app

##############################################################################################

if __name__ == '__main__':
    app = create_app()
    app.run(
        debug=True, use_reloader=True,
        host='127.0.0.1', port=5600
    )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值