You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React调用Google ADK API服务器遇CORS问题,如何获取FastAPI实例?

解决Google ADK FastAPI服务的CORS跨域问题

步骤1:获取ADK启动的FastAPI实例

  • 定位ADK api_server 的启动源码或模块,ADK内部会初始化FastAPI实例,你可以在自定义代理代码里查找对该实例的引用,或者在ADK核心代码中寻找类似app = FastAPI()的定义。
  • 如果是基于ADK做的代理扩展,检查ADK是否提供了内置方法来获取API服务实例(比如adk.get_api_app()这类接口)。

步骤2:添加CORS中间件配置

拿到FastAPI实例后,直接添加CORSMiddleware,放开Teams React应用的域名权限:

from fastapi.middleware.cors import CORSMiddleware

# 替换成你实际获取到的FastAPI实例对象
app = get_adk_fastapi_app()

# 允许的源,添加你的React应用地址
allowed_origins = [
    "https://localhost:53000"
]

app.add_middleware(
    CORSMiddleware,
    allow_origins=allowed_origins,
    allow_credentials=True,
    allow_methods=["*"],  # 适配SSE常用的GET请求,允许所有方法
    allow_headers=["*"],  # 允许所有请求头
)
  • 针对SSE接口,确保allow_methods包含GET(默认已覆盖),如果请求带身份凭证,allow_credentials必须设为True。

步骤3:重启ADK API服务

停止当前运行的adk api_server进程,重新执行启动命令,让CORS配置生效。

步骤4:验证配置

用浏览器开发者工具的Network面板,查看http://localhost:8000/run_sse请求的响应头,确认是否存在Access-Control-Allow-Origin: https://localhost:53000,存在则配置生效。

内容的提问来源于stack exchange,提问作者San Jaisy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 13:23:11