【发布时间】:2018-09-25 17:09:14
【问题描述】:
我需要在 .NET 中上传视频 我使用您的客户端库。当我在回调 url 收到代码时,我需要更改此代码以获取令牌。 我怎样才能做到这一点?我没有找到任何有关此的信息。 然后,我应该把这个令牌放在哪里,上传视频?
谢谢
【问题讨论】:
标签: youtube-api youtube-data-api
我需要在 .NET 中上传视频 我使用您的客户端库。当我在回调 url 收到代码时,我需要更改此代码以获取令牌。 我怎样才能做到这一点?我没有找到任何有关此的信息。 然后,我应该把这个令牌放在哪里,上传视频?
谢谢
【问题讨论】:
标签: youtube-api youtube-data-api
就像其他 quickstart 使用 Youtube API 一样,您还必须按照如何获取包含您的 token_uri 的 client_secret.json 的步骤:
- 使用此向导在 Google Developers Console 中创建或选择一个项目并自动打开 API。点击继续, 然后转到凭据。
- 在将凭据添加到您的项目页面上,点击取消按钮。
- 在页面顶部,选择OAuth 同意屏幕 标签。选择一个电子邮件地址,输入一个产品名称(如果尚未设置),然后点击 保存按钮。
- 选择Credentials标签,点击Create credentials按钮并选择OAuth client ID。
- 选择应用类型Other,输入名称“YouTube Data API Quickstart”,点击创建按钮。
- 单击确定关闭生成的对话框。
- 点击客户端 ID 右侧的下载图标(下载 JSON)按钮。
- 将下载的文件移动到您的工作目录并将其重命名为
client_secret.json。
client_secret.json
{"installed":{"client_id":"837380381682-kthu0nva0f5tqli35o6hk4jiv0p9mh3s.apps.googleusercontent.com","project_id":"sureness-1534400441179","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://www.googleapis.com/oauth2/v3/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"n-5X4ssSnqw9JXFOrLAl1J1y","redirect_uris":["urn:ietf:wg:oauth:2.0:oob","http://localhost"]}}
这是来自 .Net Code Sample 的代码 sn-p,其中实现了 client_secrets.json:
UserCredential credential; using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read)) { credential = await GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, // This OAuth 2.0 access scope allows for full read/write access to the // authenticated user's account. new[] { YouTubeService.Scope.Youtube }, "user", CancellationToken.None, new FileDataStore(this.GetType().ToString()) ); }
【讨论】: