From fb003f3248099c2224e3360fbcc23b169ffd05ea Mon Sep 17 00:00:00 2001 From: thatmattlove Date: Sat, 11 Sep 2021 13:10:05 -0700 Subject: [PATCH] Add GZIP support & swap Starlette classes for FastAPI classes --- hyperglass/api/__init__.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/hyperglass/api/__init__.py b/hyperglass/api/__init__.py index 24ef8b9..00410a7 100644 --- a/hyperglass/api/__init__.py +++ b/hyperglass/api/__init__.py @@ -7,12 +7,13 @@ from pathlib import Path # Third Party from fastapi import FastAPI +from fastapi.responses import JSONResponse from fastapi.exceptions import ValidationError, RequestValidationError -from starlette.responses import JSONResponse +from fastapi.staticfiles import StaticFiles from starlette.exceptions import HTTPException as StarletteHTTPException from fastapi.openapi.utils import get_openapi -from starlette.staticfiles import StaticFiles -from starlette.middleware.cors import CORSMiddleware +from fastapi.middleware.cors import CORSMiddleware +from fastapi.middleware.gzip import GZipMiddleware # Project from hyperglass.log import log @@ -184,6 +185,9 @@ app.add_middleware( allow_headers=["*"], ) +# GZIP Middleware +app.add_middleware(GZipMiddleware) + app.add_api_route( path="/api/info", endpoint=info,