feat: create /login route to set auth token on cookie for user
Browse files
app.py
CHANGED
@@ -293,14 +293,14 @@ def split_image(image: Image.Image) -> List[Image.Image]:
|
|
293 |
images.append(Image.fromarray(image[:, s:e+1]))
|
294 |
return [preprocess_image(image) for image in images]
|
295 |
|
296 |
-
from fastapi import FastAPI, File, UploadFile, HTTPException, Depends, Header
|
297 |
from fastapi.responses import JSONResponse, FileResponse, StreamingResponse
|
298 |
import tempfile
|
299 |
import os
|
300 |
|
301 |
app = FastAPI()
|
302 |
|
303 |
-
def verify_token(authorization: str = Header(...)):
|
304 |
if not authorization.startswith("Bearer "):
|
305 |
raise HTTPException(status_code=403, detail="Invalid or missing token")
|
306 |
|
@@ -373,9 +373,10 @@ async def remove_image_background(image: UploadFile = File(...), token: str = De
|
|
373 |
raise HTTPException(status_code=500, detail=str(e))
|
374 |
|
375 |
|
376 |
-
|
377 |
-
|
378 |
-
|
|
|
379 |
|
380 |
with gr.Blocks(delete_cache=(600, 600)) as demo:
|
381 |
gr.Markdown("""
|
|
|
293 |
images.append(Image.fromarray(image[:, s:e+1]))
|
294 |
return [preprocess_image(image) for image in images]
|
295 |
|
296 |
+
from fastapi import FastAPI, File, UploadFile, HTTPException, Depends, Header, Response
|
297 |
from fastapi.responses import JSONResponse, FileResponse, StreamingResponse
|
298 |
import tempfile
|
299 |
import os
|
300 |
|
301 |
app = FastAPI()
|
302 |
|
303 |
+
def verify_token(authorization: str = Header(...), cookie_token: str = Header(None)):
|
304 |
if not authorization.startswith("Bearer "):
|
305 |
raise HTTPException(status_code=403, detail="Invalid or missing token")
|
306 |
|
|
|
373 |
raise HTTPException(status_code=500, detail=str(e))
|
374 |
|
375 |
|
376 |
+
@app.get("/login")
|
377 |
+
async def login(response: Response, token: str = Depends(verify_token)):
|
378 |
+
response.set_cookie(key="auth_token", value=f"Bearer {os.getenv('AUTH_TOKEN')}", httponly=True)
|
379 |
+
return JSONResponse(content={"message": "HI!"})
|
380 |
|
381 |
with gr.Blocks(delete_cache=(600, 600)) as demo:
|
382 |
gr.Markdown("""
|