代码拉取完成,页面将自动刷新
同步操作将从 keijack/naja-atra 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
from simple_http_server import controller, request_map
from wsgiref.simple_server import WSGIServer, make_server
import simple_http_server.server as server
import os
import signal
from threading import Thread
from simple_http_server.logger import get_logger, set_level
set_level("DEBUG")
@request_map("/stop")
def stop():
server.stop()
return "<!DOCTYPE html><html><head><title>关闭</title></head><body>关闭成功!</body></html>"
_logger = get_logger("http_test")
PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))
def start_server():
_logger.info("start server in background. ")
server.scan(base_dir="tests/ctrls", regx=r'.*controllers.*')
server.start(
# port=9443,
port=9090,
resources={"/public/*": f"{PROJECT_ROOT}/tests/static"},
# ssl=True,
# certfile=f"{PROJECT_ROOT}/tests/certs/fullchain.pem",
# keyfile=f"{PROJECT_ROOT}/tests/certs//privkey.pem",
prefer_coroutine=False)
wsgi_server: WSGIServer = None
def start_server_wsgi():
_logger.info("start server in background. ")
server.scan(base_dir="tests/ctrls", regx=r'.*controllers.*')
wsgi_proxy = server.init_wsgi_proxy(
resources={"/public/*": f"{PROJECT_ROOT}/tests/static"})
global wsgi_server
wsgi_server = make_server("", 9090, wsgi_proxy.app_proxy)
wsgi_server.serve_forever()
def on_sig_term(signum, frame):
if wsgi_server:
_logger.info(f"Receive signal [{signum}], shutdown the wsgi server...")
Thread(target=wsgi_server.shutdown).start()
else:
_logger.info(f"Receive signal [{signum}], stop server now...")
server.stop()
if __name__ == "__main__":
signal.signal(signal.SIGTERM, on_sig_term)
signal.signal(signal.SIGINT, on_sig_term)
start_server()
# start_server_wsgi()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。