diff --git a/routes/__init__.py b/routes/__init__.py new file mode 100644 index 000000000..59ed7f41a --- /dev/null +++ b/routes/__init__.py @@ -0,0 +1 @@ +from routes.internal.internal_routes import InternalRoutes \ No newline at end of file diff --git a/routes/internal/README.md b/routes/internal/README.md new file mode 100644 index 000000000..c6076412c --- /dev/null +++ b/routes/internal/README.md @@ -0,0 +1,5 @@ +# ComfyUI Internal Routes + +All routes under the `/internal` path are designated for **internal use by ComfyUI only**. These routes are considered part of the internal API are not intended for use by external applications. + +The internal routes may change at any time without notice. diff --git a/routes/internal/internal_routes.py b/routes/internal/internal_routes.py new file mode 100644 index 000000000..d0eff0c75 --- /dev/null +++ b/routes/internal/internal_routes.py @@ -0,0 +1,18 @@ +from aiohttp import web + +class InternalRoutes: + def __init__(self): + self.routes = web.RouteTableDef() + self._app = None + + def setup_routes(self): + @self.routes.get('/files/') + async def internal_test(request): + return web.json_response({"message": "Internal route is working"}) + + def get_app(self): + if self._app is None: + self._app = web.Application() + self.setup_routes() + self._app.add_routes(self.routes) + return self._app \ No newline at end of file diff --git a/server.py b/server.py index 0c3820167..0c67974e5 100644 --- a/server.py +++ b/server.py @@ -29,6 +29,8 @@ from app.frontend_management import FrontendManager from app.user_manager import UserManager from model_filemanager import download_model, DownloadModelStatus from typing import Optional +from routes import InternalRoutes + class BinaryEventTypes: PREVIEW_IMAGE = 1 @@ -72,6 +74,7 @@ class PromptServer(): mimetypes.types_map['.js'] = 'application/javascript; charset=utf-8' self.user_manager = UserManager() + self.internal_routes = InternalRoutes() self.supports = ["custom_nodes_from_web"] self.prompt_queue = None self.loop = loop @@ -593,6 +596,7 @@ class PromptServer(): def add_routes(self): self.user_manager.add_routes(self.routes) + self.app.add_subapp('/internal', self.internal_routes.get_app()) # Prefix every route with /api for easier matching for delegation. # This is very useful for frontend dev server, which need to forward