我希望我的用户能够在我的YouTube帐户下将视频上传到我的YouTube频道。因此,我并不真正需要或需要他们以自己身份验证(OAuth)。C#MVC使用v3 API而不使用OAuth将视频上传到YouTube?
我见过这里的例子:https://developers.google.com/youtube/v3/code_samples/dotnet
的所有代码的例子,我觉得好像使用OAuth和客户端秘密进行身份验证。任何人都可以向我指出一个很好的教程/示例,我可以将视频作为MYself(使用API密钥?)上传到MY频道?
谢谢。
UPDATE
嗯....我甚至不知道我做了什么是正确的....但这里是我做了什么:
赴证书为我的项目: https://console.developers.google.com/apis/credentials
创建2 OAuth credenials - 一个是Web应用程序,一个是其他。我下载了这些JSON并将它们添加到我的项目中,以便我可以测试每一个。
我启用了YouTube的数据API的位置: https://console.developers.google.com/apis/api/youtube.googleapis.com/overview
我基本上采取了净从这里上传例如: https://developers.google.com/youtube/v3/code_samples/dotnet
我还安装了NuGet包使用YouTube API V3
之前“var youtubeService = ...”我加了这个:
// This bit checks if the token is out of date,
// and refreshes the access token using the refresh token.
if (credential.Token.IsExpired(SystemClock.Default))
{
if (!await credential.RefreshTokenAsync(CancellationToken.None))
{
Console.WriteLine("No valid refresh token.");
}
}
还创建了以下类 - 我再次从另一个StackOverflow后获得它 - 以创建离线访问令牌为目标?
public class OfflineAccessGoogleAuthorizationCodeFlow : GoogleAuthorizationCodeFlow
{
public OfflineAccessGoogleAuthorizationCodeFlow(GoogleAuthorizationCodeFlow.Initializer initializer) : base(initializer) { }
public override AuthorizationCodeRequestUrl CreateAuthorizationCodeRequest(string redirectUri)
{
return new GoogleAuthorizationCodeRequestUrl(new Uri(AuthorizationServerUrl))
{
ClientId = ClientSecrets.ClientId,
Scope = string.Join(" ", Scopes),
RedirectUri = redirectUri,
AccessType = "offline",
ApprovalPrompt = "force"
};
}
}
所以我测试过它,并且上传然而最终“似乎”工作,:
的代码永远不会返回到搜索从等待videosInsertRequest.UploadAsync();并似乎挂....更新 - 修正。看到这里:https://www.codeproject.com/Questions/1087360/Youtube-data-API-for-uploading-videos-not-working
该视频从来没有真正出现在我的频道 - 我有一种感觉YouTube在它甚至上传之前禁止它? (这只是一个测试视频 - 没有什么险恶 - 这可能是为什么?)
- 我不知道如果我仍然这样做是正确的。
还有什么建议吗?我仍然很难相信任何人都没有一个我以后的工作的例子。我无法相信用户......将视频上传到我的网络服务器.....然后上传到我自己的频道非常困难!
让用户将视频发送到您的Web应用程序,然后从那里使用oauth将其上传到您的帐户。 – Gusman
OAuth是否会要求我手动进行身份验证?我不希望任何手动干预从我这边上传到YouTube ... –
https://stackoverflow.com/questions/37006335/youtube-oauth-2-0-api-permanent-code-to-retrieve -tokens – Gusman