ADD file via upload

ca
p6s4t3fer 4 months ago
parent 10df79c919
commit 0e89f21947

@ -0,0 +1,67 @@
from flask import Flask, jsonify
from flask_cors import CORS
from config import Config
from models import db
import os
def create_app():
"""创建并配置Flask应用"""
app = Flask(__name__)
app.config.from_object(Config)
# 启用CORS允许前端跨域访问
CORS(app, resources={r"/api/*": {"origins": "*"}})
# 初始化数据库
db.init_app(app)
# 创建必要的目录
os.makedirs(app.config['UPLOAD_FOLDER'], exist_ok=True)
os.makedirs(app.config['CERTIFICATE_FOLDER'], exist_ok=True)
os.makedirs('ca', exist_ok=True)
# 注册蓝图
from routes.auth import auth_bp
from routes.certificate import cert_bp
from routes.admin import admin_bp
app.register_blueprint(auth_bp, url_prefix='/api/auth')
app.register_blueprint(cert_bp, url_prefix='/api/certificate')
app.register_blueprint(admin_bp, url_prefix='/api/admin')
# 添加测试路由
@app.route('/')
def index():
return jsonify({
'status': 'ok',
'message': 'CA System API is running',
'version': '1.0.0'
})
@app.route('/api')
def api_info():
return jsonify({
'status': 'ok',
'endpoints': {
'auth': '/api/auth/register, /api/auth/login',
'certificate': '/api/certificate/*',
'admin': '/api/admin/*'
}
})
# 初始化数据库表和CA证书
with app.app_context():
db.create_all()
# 初始化CA根证书如果不存在
from utils.cert_utils import init_ca
try:
init_ca()
except Exception as e:
print(f'警告: CA证书初始化失败: {e}')
return app
if __name__ == '__main__':
app = create_app()
app.run(debug=True, host='0.0.0.0', port=5000)
Loading…
Cancel
Save