Skip to content

Commit 10184d8

Browse files
committed
add disable-compres-response-body cli args; add compress middleware;
1 parent 9e1d301 commit 10184d8

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

comfy/cli_args.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,8 @@ def is_valid_directory(path: Optional[str]) -> Optional[str]:
179179

180180
parser.add_argument("--user-directory", type=is_valid_directory, default=None, help="Set the ComfyUI user directory with an absolute path. Overrides --base-directory.")
181181

182+
parser.add_argument("--disable-compres-response-body", action="store_true", help="Disable compressing response body.")
183+
182184
if comfy.options.args_parsing:
183185
args = parser.parse_args()
184186
else:

server.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,22 @@ async def cache_control(request: web.Request, handler):
5252
response.headers.setdefault('Cache-Control', 'no-cache')
5353
return response
5454

55+
56+
@web.middleware
57+
async def compress_body(request: web.Request, handler):
58+
accept_encoding = request.headers.get("Accept-Encoding", "")
59+
response: web.Response = await handler(request)
60+
if args.disable_compres_response_body:
61+
return response
62+
if not isinstance(response, web.Response):
63+
return response
64+
if response.content_type not in ["application/json", "text/plain"]:
65+
return response
66+
if response.body and "gzip" in accept_encoding:
67+
response.enable_compression()
68+
return response
69+
70+
5571
def create_cors_middleware(allowed_origin: str):
5672
@web.middleware
5773
async def cors_middleware(request: web.Request, handler):
@@ -149,7 +165,7 @@ def __init__(self, loop):
149165
self.client_session:Optional[aiohttp.ClientSession] = None
150166
self.number = 0
151167

152-
middlewares = [cache_control]
168+
middlewares = [cache_control, compress_body]
153169
if args.enable_cors_header:
154170
middlewares.append(create_cors_middleware(args.enable_cors_header))
155171
else:

0 commit comments

Comments
 (0)