我正在尝试通过youtube API将视频上传到youtube频道。我在youtube上创建了一个频道,创建了开发者密钥。但它并没有上传视频。请帮帮我。
这里有一个例外:
The underlying connection was closed: An unexpected error occurred on a send.
这是代码:
try
{
YouTubeRequestSettings setting;
YouTubeRequest request;
string DevKey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
setting = new YouTubeRequestSettings("Channel Name", DevKey);
request = new YouTubeRequest(setting);
Video newVideo = new Video();
newVideo.Title = Title;
newVideo.Description = Description;
newVideo.Private = true;
newVideo.YouTubeEntry.MediaSource = new MediaFileSource(filestream, "filename", "videp/mp4");
Video CreateVideo = request.Upload(newVideo);
return CreateVideo.VideoId;
}
catch (Exception ex)
{
}
我不确定您使用的是哪种API。看起来您正在C#应用程序中使用YouTube Data API v2。v2已降级,您应该使用v3!您可以使用NuGet软件包管理器将其安装在应用程序中。然后,您可以简单地按照以下示例上传视频:https://developers.google.com/youtube/v3/code_samples/dotnet#upload_a_video
请注意,将视频上传到youtube频道需要使用正确范围的身份验证。我在您的代码示例中找不到身份验证。仅凭devkey是不够的。您需要使用正确的凭据(客户端ID、客户端机密和重定向URI)创建OAuth身份验证。您可以从开发人员控制台下载凭证作为JSON文件,并在应用程序中使用它,如我上面链接的示例所示。
希望这能帮助
garv3