Parcourir la source

CORS e concorrencia

main
Guilherme Rudic il y a 6 mois
Parent
révision
2bfaa1741e
1 fichiers modifiés avec 16 ajouts et 0 suppressions
  1. +16
    -0
      main.py

+ 16
- 0
main.py Voir le fichier

@@ -1,12 +1,25 @@
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
from typing import Optional
from fastapi.middleware.cors import CORSMiddleware
import theading
# Suponha que quebrar_captcha_base64 está definido em outro módulo ou arquivo
from solve_captcha import quebrar_captcha_base64
app = FastAPI()
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # Ajuste conforme necessário
allow_credentials=True,
allow_methods=["*"], # Ajuste conforme necessário
allow_headers=["*"],
)
# Criando um bloqueio para gerenciamento de concorrência
lock = threading.Lock()
class CaptchaRequest(BaseModel):
captchafile: str
authtoken: str
@@ -23,8 +36,11 @@ async def solve_captcha(request: CaptchaRequest):
raise HTTPException(status_code=400, detail="captchafile is required")
try:
lock.acquire()
resultado_captcha = quebrar_captcha_base64(request.captchafile)
lock.release()
return {"captcha": "", "text": resultado_captcha, "is_correct": True, "status": 200}
except Exception as e:
lock.release()
raise HTTPException(status_code=500, detail=str(e))

Chargement…
Annuler
Enregistrer