gpt4 book ai didi

youtube-api - 上传到 YouTube API 时缺少“Access-Control-Allow-Origin”

转载 作者:行者123 更新时间:2023-12-03 17:24:48 25 4
gpt4 key购买 nike

几年来,我们一直使用一些自定义 JavaScript 代码通过 YouTube API 成功上传视频。该代码基于 Google 提供的一些示例 (cors_upload.js)。这不是我们经常使用的东西,只是每隔几周使用一次。

几周前一切正常,但我注意到最近事情停止了。我们登录正常,我们获得了 channel 信息。但是当我们开始上传时(通过 XHR POST 发生),我们收到一个 CORS 错误:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://www.googleapis.com/upload/youtube/v3/videos?part=snippet%2Cstatus&uploadType=resumable. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).



但是我们没有更改我们的代码或我们的服务器上的任何内容,似乎我们正在做所有必要的事情,如谷歌所记录的那样,让他们的服务使用所需的 CORS header 进行响应。

根据开发控制台,XHR 请求实际上生成了 2 个网络请求。首先我看到一个“选项”:
Request URL:https://www.googleapis.com/upload/youtube/v3/videos?part=snippet%2Cstatus&uploadType=resumable
Request Method:OPTIONS
Remote Address:172.217.9.42:443

这实际上确实返回了我期望的“access-control-allow-origin” header 。但是,紧随其后的是“POST”请求:
Request URL:https://www.googleapis.com/upload/youtube/v3/videos?part=snippet%2Cstatus&uploadType=resumable
Request Method:POST
Remote Address:172.217.9.42:443

根据开发控制台,它没有设置“access-control-allow-origin” header 。所以,我明白为什么我的浏览器拒绝了。似乎谷歌破坏了某些东西。

我确实在我们管理的服务器上成功部署了 NodeJS“CORS Anywhere”服务器。所以,我可以用它来解决这个问题。但这确实不是解决问题的正确方法。由于以编程方式上传视频不是我们经常做的事情,因此这项工作对我们来说可能就足够了。我很想知道出了什么问题或如何解决。因此,如果有人使用 YouTube API 和 JavaScript 成功上传视频,我很想知道。如果/当他们遇到问题时,希望这将有助于教育其他人。

最佳答案

我的服务刚刚开始出现同样的问题。

这似乎是 googleapis 上的一个错误,或者 youtube.v3.apis 有一个策略更改并开始阻止某些客户端。

关于youtube-api - 上传到 YouTube API 时缺少“Access-Control-Allow-Origin”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62317441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com