如何仅获取一个可恢复上传的 youtube 访问令牌

How to get a youtube access token for only one resumable upload

我希望用户将视频上传到我的 youtube 频道。这个很重要。频道不是用户频道,是我的频道。

正在处理上一个问题 (Returned 'Access-Control-Allow-Origin' is not taken into account for youtube v3 CORS) 我想我正在努力实现的目标是否正确和适当。

问题是:我能否拥有仅对一次特定上传有效且不能用于上传其他视频和对频道进行其他更改的访问令牌?因为一旦我 return 用户 he/she 的访问令牌就可以获取此访问令牌并对我的 YouTube 频道进行修改。

情况如下:

  1. 我有一个客户端和一个服务器。
  2. 服务器使用 API v3 将片段上传到 youtube 并获得可恢复的 url(Youtube v3 API 可恢复上传 - https://developers.google.com/youtube/v3/guides/using_resumable_upload_protocol)。
  3. 此 url 和访问令牌从服务器发送到浏览器,浏览器在浏览器中发出 ajax PUT 请求以将实际文件上传到可恢复 url。这样文件就不会传输到服务器,而是直接从客户端上传。

同样,问题是:我能否拥有仅对一次特定上传有效且不能用于上传其他视频和对频道进行其他更改的访问令牌?因为一旦我 return 用户 he/she 的访问令牌就可以获取此访问令牌并对我的 YouTube 频道进行修改。

我想这是不可能的。您既不能使特定的 access_token 无效,也不存在仅对单个任务有效的标记。

您可以通过编程方式撤销令牌并删除您之前授予的所有权限。但这实际上不是您想要的,因为由于它是您自己的令牌,您的服务器将不再能够生成新的 access_tokens.

我建议您重新考虑您的设置,因为您永远不应该给随机用户 access_token。您对上传到您频道的所有内容负责。

没办法,用户必须上传到您的服务器,而您的服务器负责处理上传到 YouTube 的工作。但请记住,这是您的频道...