AI Agent CORS配置:前端调Agent API,别再报跨域错了

📘 AI教程 💬 🔥 Trending

🩺 摘要

前端高高兴兴调Agent API,浏览器弹出CORS错误。不是Agent的问题,是CORS没配好。

📝 详情

第一次把Agent API暴露给前端时,Chrome控制台一片红。Access-Control-Allow-Origin缺失。花了一下午才搞定。

CORS是什么

CORS(跨域资源共享)是浏览器的安全机制。你的前端在app.com,Agent API在api.agent.com——浏览器不允许跨域请求,除非API明确说"允许"。

正确配置FastAPI

from fastapi.middleware.cors import CORSMiddleware

app.add_middleware(
    CORSMiddleware,
    allow_origins=["https://app.com"],
    allow_methods=["*"],
    allow_headers=["*"],
)

安全注意事项

  • 不要用allow_origins=["*"] ——等于打开大门
  • 只允许你控制的域名
  • 发请求的method要控制(POST够了就不给PUT)
  • Headers也要限制

总结

CORS配置几分钟的事,但不配的话前端永远调不通。 安全方面注意不要全开*就好。

生产环境配置

origins = [
    "https://app.example.com",
    "https://admin.example.com",
]

app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,  # 不要用["*"]
    allow_credentials=True,
    allow_methods=["GET", "POST"],
    allow_headers=["Authorization", "Content-Type"],
)

安全建议:只允许HTTPS域名,不允许IP地址,不允许通配符。