SuperAPI AI 工具集

cors-api-proxy

编程与开发

查看项目

更新于 10-16 00:01

技能介绍

用途:解决浏览器无法安全保存 Looker API Client Secret、但又需要直接调用 Looker API 的问题。后端只代理身份与认证,不代理数据,前端拿到令牌后自行请求数据。

主要能力:前端用应用自身认证(JWT、Session Cookie 等)向后端验证身份;后端用管理员凭据向 Looker 申请用户级访问令牌,并把应用用户映射到 Looker 身份(必要时创建或更新用户),按角色限定权限与模型范围;后端把 access_token 返回前端,前端以 Authorization: Bearer <token> 头直接调用 Looker API。

必要配置与用法:在 Looker 管理后台 Admin > Embed 的 Embedded Domain Allowlist 中显式加入前端来源(协议、域名、端口),否则浏览器端请求会被拒绝;应用与 Looker 实例均须使用 HTTPS。后端负责密钥管理、令牌过期与刷新、以及通过 Looker User API 或 Cookieless Embedding API 预先配置 external_user_id。前端应尽量把令牌保存在内存中,并处理 401 以自动触发令牌交换。

适用场景:需要从浏览器直接获取较大数据负载(JSON、CSV、图片)并希望绕过应用服务器、降低延迟与后端负载的前端应用。

限制与常见问题:预检 OPTIONS 失败通常源于来源未加入允许列表或 CSP 限制;需避免令牌权限过大,遵循最小权限;注意 Cookie 干扰,前端应使用无凭据请求,或确保 Looker 不依赖旧式 Cookie 认证。具体实现代码与版本要求暂未提供。