-
Notifications
You must be signed in to change notification settings - Fork 466
Expand file tree
/
Copy pathserver.py
More file actions
41 lines (28 loc) · 1022 Bytes
/
server.py
File metadata and controls
41 lines (28 loc) · 1022 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from fastapi.staticfiles import StaticFiles
def init():
# 设置为服务器模式
from mdcx.server import var
var.is_server = True
# 使用 ServerSignals 替代 Qt Signal
from mdcx.server.signals import signal
from mdcx.signals import set_signal
set_signal(signal)
def create_app() -> FastAPI:
init()
from mdcx.server.api.v1 import api
from mdcx.server.ws.auth import WebSocketProtocolBearerMiddleware
app = FastAPI(title="MDCx API", version="1.0.0")
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # Allows all origins
allow_credentials=True,
allow_methods=["*"], # Allows all methods
allow_headers=["*"], # Allows all headers
)
app.add_middleware(WebSocketProtocolBearerMiddleware)
app.include_router(api)
app.mount("/", StaticFiles(directory="ui/dist", html=True), name="ui")
return app
app = create_app()