我们正在更新 Data API,以便与 YouTube 统计 Shorts 短视频观看次数的方式保持一致。
了解详情
实现 OAuth 2.0 授权
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
YouTube Data API 支持 OAuth 2.0 协议,用于授权访问私密用户数据。
以下列表介绍了一些核心 OAuth 2.0 概念:
-
当用户首次尝试在您的应用中使用要求用户登录 Google Account or YouTube account 的功能时,您的应用会启动 OAuth 2.0 授权流程。
-
您的应用会将用户定向到 Google 的授权服务器。指向该页面的链接会指定您的应用为用户账号请求访问权限的 scope
。scope
用于指定您的应用在充当已验证用户时可以检索、插入、更新或删除的资源。
-
如果用户同意授权您的应用访问这些资源,Google 会向您的应用返回一个令牌。它会根据应用的类型验证令牌或将其换成其他类型的令牌。
例如,服务器端 Web 应用会将返回的令牌换成访问令牌和刷新令牌。访问令牌可让应用代表用户授权请求,刷新令牌可让应用在原始访问令牌到期时检索新的访问令牌。
重要提示:如需使用 OAuth 2.0 授权,您需要在 Google API 控制台中获取授权凭据。
如需了解详情,请参阅 OAuth 2.0 授权指南。
OAuth 2.0 流程
Google API 支持多种 OAuth 2.0 用例:
- 服务器端 Web 应用流程支持可安全存储持久性信息的 Web 应用。
- JavaScript Web 应用流程支持在浏览器中运行的 JavaScript 应用。
- 移动和桌面应用流程支持安装在设备(例如手机或计算机)上的应用。
- 电视和受限输入设备流程支持输入功能有限的设备,例如游戏机和摄像机。
- 适用于服务账号流程的 OAuth 2.0 流程支持不访问用户信息的服务器到服务器互动。
不过,YouTube Data API 不支持此流程。
Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a
NoLinkedYouTubeAccount
error.
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-11-05。
[null,null,["最后更新时间 (UTC):2024-11-05。"],[[["\u003cp\u003eThe YouTube Data API uses the OAuth 2.0 protocol to authorize access to private user data, which is initiated when a user attempts to use features requiring login.\u003c/p\u003e\n"],["\u003cp\u003eDuring authorization, the application requests specific scopes of access, defining which resources it can manage on behalf of the user.\u003c/p\u003e\n"],["\u003cp\u003eUpon user consent, Google issues a token to the application, which may be exchanged for an access token and a refresh token, allowing the application to act on the user's behalf.\u003c/p\u003e\n"],["\u003cp\u003eGoogle APIs support various OAuth 2.0 flows tailored to different application types, such as server-side web apps, JavaScript web apps, mobile and desktop apps, and limited-input devices.\u003c/p\u003e\n"],["\u003cp\u003eWhile OAuth 2.0 includes a service account flow, the YouTube Data API does not support this method, and using it will result in a \u003ccode\u003eNoLinkedYouTubeAccount\u003c/code\u003e error.\u003c/p\u003e\n"]]],["The YouTube Data API uses OAuth 2.0 for user data access. Applications initiate authorization by directing users to Google, specifying the requested access scope. Upon user consent, Google provides a token. Web applications exchange this for access and refresh tokens, enabling authorized requests and token renewal. Various flows exist for different app types, including server-side web apps, JavaScript web apps, mobile/desktop apps, and limited-input devices. Service accounts are not supported for the YouTube Data API. Authorization requires credentials from the Google API Console.\n"],null,["# Implementing OAuth 2.0 Authorization\n\nThe YouTube Data API supports the [OAuth 2.0 protocol](http://oauth.net/2/) for authorizing access to private user data.\n\nThe following list explains some core OAuth 2.0 concepts:\n\n- When a user first attempts to use features in your application that requires the user to be logged in to a Google Account or YouTube account, your application initiates the OAuth 2.0 authorization process.\n\n- Your application directs the user to Google's authorization server. The link to that page specifies the **scope** of access that your application is requesting for the user's account. The **scope** specifies the resources that your application can retrieve, insert, update, or delete when acting as the authenticated user.\n\n- If the user consents to authorize your application to access those resources, Google returns a token to your application. Depending on your application's type, it either validates the token or exchanges it for a different type of token.\n\n For example, a server-side web application exchanges the returned token for an access token and a refresh token. The access token lets the application authorize requests on the user's behalf, and the refresh token lets the application retrieve a new access token when the original access token expires.\n\n**Important:** To use the OAuth 2.0 Authorization, you need to [obtain authorization credentials in the Google API Console](/youtube/registering_an_application).\n\nFor more details, see the [OAuth 2.0 Authorization Guide](https://developers.google.com/identity/protocols/oauth2).\n\nOAuth 2.0 flows\n---------------\n\nGoogle APIs support several OAuth 2.0 use cases:\n\n- The [server-side web apps](/youtube/v3/guides/auth/server-side-web-apps) flow supports web applications that can securely store persistent information.\n- The [JavaScript web apps](/youtube/v3/guides/auth/client-side-web-apps) flow supports JavaScript applications running in a browser.\n- The [mobile and desktop apps](/youtube/v3/guides/auth/installed-apps) flow supports applications installed on a device, such as a phone or computer.\n- The [TVs and limited-input devices](/youtube/v3/guides/auth/devices) flow supports devices with limited input capabilities, such as game consoles and video cameras.\n- The OAuth 2.0 flow for service account flow supports server-to-server interactions that do not access user information. However, the YouTube Data API does not support this flow. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a `NoLinkedYouTubeAccount` error."]]