# -*- coding: utf-8 -*- # @Author: Owl # @Date: 2025/11/10 18:12 # @Description: import json import logging import requests from flask import Flask, request from app.cross_eva_views import app from app.user_worker import * @app.route('/api/route', methods=['GET']) def query_route(): return query_host_by_nodeid(dict(request.args)) #输入userno #输入password(MD5) #返回token @app.route('/api/login', methods=['POST']) def login(): ip = request.remote_addr params = request.get_json() city_name = get_province_by_ip(ip) params['ip'] = ip params['city_name'] = city_name return do_login(params) #输入token #返回有操作权限的资源列表 @app.route('/api/authentication', methods=['GET']) def authentication(): token = request.headers.get('token') if not token: token = None return do_authentication(dict(request.args), token) #userno #返回用户基础信息 @app.route('/api/get_user_info', methods=['GET']) def get_user_info(): token = request.headers.get('token') if not token: token = None return do_get_user_info(dict(request.args), token) @app.route('/rerun') def api_list(): return app.send_static_file('rerun.html') # return 'Hello, World!' @app.route('/rerun/set', methods=['GET']) def set_rerun(): return set_rerun_dates(dict(request.args)) @app.route('/rerun/del', methods=['GET']) def del_rerun(): return clear_rerun_dates(dict(request.args)) @app.route('/rerun/get', methods=['GET']) def get_rerun(): return get_rerun_dates(dict(request.args)) @app.route('/api/modify_password', methods=['POST']) def modify_password(): ip = request.remote_addr params = request.get_json() city_name = get_province_by_ip(ip) params['ip'] = ip params['city_name'] = city_name return do_modify_password(params) @app.route('/api/query_all_users', methods=['GET']) def query_all_users_controller(): return query_user_list(dict(request.args)) def get_province_by_ip(ip): try: response = requests.get(f'http://whois.pconline.com.cn/ipJson.jsp?ip={ip}&json=true') ip_info = json.loads(response.content.strip().decode('gbk')) addr = ip_info['addr'] if addr == ' 本机地址': addr = '本机' return addr.split(' ')[0] except Exception as e: logging.error(e) return '未知' @app.route('/api/modify_user', methods=['POST']) def modify_user_controller(): params = request.get_json() ip = request.remote_addr city_name = get_province_by_ip(ip) params['ip'] = ip params['city_name'] = city_name return modify_user(params) @app.route('/api/delete_user', methods=['GET']) def delete_user_controller(): params = dict(request.args) ip = request.remote_addr city_name = get_province_by_ip(ip) params['ip'] = ip params['city_name'] = city_name return del_user(params) @app.route('/api/add_user', methods=['POST']) def add_user_controller(): params = request.get_json() ip = request.remote_addr city_name = get_province_by_ip(ip) params['ip'] = ip params['city_name'] = city_name return create_user(params)