为什么国内 AI 服务都限制了跨域,但比如 OpenAI 就不做该限制

2023-11-28 21:37:14 +08:00
 alanhe421

第三方 AI 服务本来前端就可以直接调用,由于跨域限制,要么自己搞个代理,要么就得走服务端调用了。

目前测试

  1. 文心一言
  2. 阿里通义千问
  3. 腾讯混元

都做了限制

对比来说,比如 OpenAI API,前端直接调用是可以的,当然确保本身网络通畅。

所以限制了就安全了吗?

2753 次点击
所在节点    OpenAI
11 条回复
drymonfidelia
2023-11-28 21:52:31 +08:00
因为国内大-厂 AI 服务的后端是搞 AI 写的不懂配置 CORS 规则
leaflxh
2023-11-28 22:04:48 +08:00
不知道 openai 是怎么做的

如果用户登录了 openai ,然后访问了我的网站,
我能否直接 fetch( https://openai/api, {credentials: 'include'}) ,在后台盗刷用户的额度?
Yadomin
2023-11-28 22:08:27 +08:00
为什么会想着把一个付费的 api 暴露到前端,不怕被人刷爆吗
leaflxh
2023-11-28 22:10:58 +08:00
看了下,基于"Authorization: Bearer $OPENAI_API_KEY"

不给跨域确实不方便
leeg810312
2023-11-28 22:36:21 +08:00
直接在 HTTP header 里检查 key 的 api 都是给后端调用的,怎么可以直接给前端用
totoro52
2023-11-28 22:46:22 +08:00
前端直接套 API ? 意思就是我密钥也放前端? 你帮我还账单?🤡
yumusb
2023-11-29 00:07:17 +08:00
不安全。
MEIerer
2023-11-29 09:58:39 +08:00
@leaflxh #2 同问,不过给纯前端调用确实方便很多。
leaflxh
2023-11-29 10:17:10 +08:00
@totoro52

可以做套壳网站,让用户使用自己的 key ,后端不做存储。
leaflxh
2023-11-29 10:19:58 +08:00
或许是为了防止别人做慈善,见过不少网站把 OSS 的 ak sk 放在客户端 js 直接调的
cdlnls
2023-12-12 17:49:28 +08:00
我也是非常不理解。

最近做了个 chrome 插件,插件需要自定义文心一言、通义千问、OpenAI 的密钥来使用。然后做好了测试的时候,发现插件只要指定了特定网站启用,访问接口的时候就会报跨域,只有 openai 能用。麻了。

十分不理解,一个对外开放调用的接口,为啥要做这个限制。

问了工单,说是为了安全,如果密钥要泄漏,怎么都能被刷。用限制前端调用的方式来来降低密钥泄漏的概率,我觉得意义真的不大。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/996046

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX