72 lines
1.8 KiB
Python
72 lines
1.8 KiB
Python
import os
|
|
import requests
|
|
from flask import Flask, render_template, request, redirect, url_for, session,make_response,send_from_directory,jsonify
|
|
from werkzeug.routing import BaseConverter
|
|
from utils.login import login_quark
|
|
from utils.tools import get_cnb_weburl
|
|
app = Flask(__name__)
|
|
#app = Flask(__name__,template_folder='templates') #修改模板目录
|
|
app.jinja_env.auto_reload = True
|
|
|
|
|
|
class PhoneConverter(BaseConverter):
|
|
# 自定义路由转换器
|
|
regex = '1[3-9]\d{9}'
|
|
|
|
class LiConverter(BaseConverter):
|
|
# 自定义to_python转换器
|
|
def to_python(self, value):
|
|
return value.split("+")
|
|
|
|
app.url_map.converters["phone"] = PhoneConverter
|
|
app.url_map.converters["li"] = LiConverter
|
|
|
|
@app.route("/", methods=["GET", "POST"])
|
|
def index():
|
|
#return render_template("index.html")
|
|
return render_template('index.html')
|
|
|
|
@app.route("/<phone:param>")
|
|
def phone(param):
|
|
return param
|
|
|
|
@app.route("/<li:param>")
|
|
def uner_info(param):
|
|
return param
|
|
|
|
#falsk中重定向
|
|
@app.route('/profile/')
|
|
def proflie():
|
|
if request.args.get('name'):
|
|
return '个人中心页面'
|
|
else:
|
|
# return redirect(url_for('login'))
|
|
return redirect(url_for('index'),code=302)
|
|
|
|
|
|
@app.route('/demo2')
|
|
def demo2():
|
|
resp = make_response('make response测试')
|
|
resp.headers['itbaizhan'] = 'Python'
|
|
resp.status = '404 not found'
|
|
return resp
|
|
|
|
@app.route('/login',methods=['POST'])
|
|
def login():
|
|
# 获取POST请求中的JSON数据
|
|
data = request.get_json()
|
|
token = data.get('token')
|
|
if not token:
|
|
print('缺少token参数')
|
|
status = login_quark(token)
|
|
return jsonify({"status": status})
|
|
|
|
if __name__ == "__main__":
|
|
weburl = get_cnb_weburl(5000)
|
|
print("Run_url:",weburl)
|
|
app.config.from_pyfile("config.py")
|
|
app.run(host="0.0.0.0")
|
|
|
|
|
|
|