/ backend / web.py
web.py
 1  import time
 2  from typing import List
 3  
 4  from fastapi import FastAPI
 5  from mangum import Mangum
 6  from starlette.middleware.cors import CORSMiddleware
 7  
 8  from models.models import ProviderVehiclesRequest
 9  from models.interface import VehicleOption
10  from repository import get_options_ordered
11  
12  app = FastAPI()
13  
14  origins = ["http://localhost", "http://localhost:3000", "https://welkedeelauto.nl"]
15  
16  app.add_middleware(
17      CORSMiddleware,
18      allow_origins=origins,
19      allow_credentials=True,
20      allow_methods=["*"],
21      allow_headers=["*"],
22  )
23  
24  duck = str
25  
26  
27  @app.get("/")
28  def home() -> duck:
29      return "🦆"
30  
31  
32  @app.post("/providers")
33  async def routing_request(request: ProviderVehiclesRequest) -> List[VehicleOption]:
34      return await get_options_ordered(request)
35  
36  
37  handler = Mangum(app, lifespan="off")