У меня есть сервер fastapi, работающий на ec2, и интерфейс, развернутый через amplify. Я получаю ошибку CORS в первые паPython

Программы на Python
Ответить
Anonymous
 У меня есть сервер fastapi, работающий на ec2, и интерфейс, развернутый через amplify. Я получаю ошибку CORS в первые па

Сообщение Anonymous »

У меня есть сервер fastapi, работающий на ec2, и интерфейс React, развернутый через amplify. Серверный API работает нормально, когда я звоню через почтальона, но выдает проблему CORS при использовании во внешнем интерфейсе. Ошибка исчезнет, ​​если я автоматически сделаю запрос 2 или 3 раза подряд.
Я провел небольшое исследование и обнаружил, что это связано с кэшированием конфигурации CORS. Моя конфигурация CORS показана в коде. как это исправить, чтобы оно работало с 1-го вызова API.
На картинке я сделал 3 вызова, и при 3-м вызове все работает нормально.

Код: Выделить всё

import os
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from src.views.index import router as root_router

app = FastAPI()

app.add_middleware(
CORSMiddleware,
allow_origins=os.getenv("trusted_origins").split(","),
allow_credentials=True,
allow_methods=["GET", "POST", "OPTIONS"],
allow_headers=["*"]
)

app.include_router(root_router)

@app.get("/api/v0")
def read_root():
return {"success": {"message": "healthy", "code": 200}}

Код: Выделить всё

trusted_origins=http://localhost:3002,https://api.dwellner.ca
Изображение


Подробнее здесь: https://stackoverflow.com/questions/792 ... lify-i-get
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»