1

以下のコードを使用して、YouTube に動画をアップロードしています。YouTube アカウントの 1 つでは機能しますが、他のアカウントでは機能しません。クライアント ID とクライアント シークレットを置き換えるだけで、YouTube アカウントを切り替えることができます。他の YouTube アカウントで機能しない理由について何か考えはありますか?

var provider = new NativeApplicationClient(GoogleAuthenticationServer.Description)
                {
                    ClientIdentifier = ClientId,
                    ClientSecret = ClientSecret
                };
                var auth = new OAuth2Authenticator<NativeApplicationClient>(provider, GetAuthorization);

                var youtube = new YouTubeService(new BaseClientService.Initializer()
                {
                    Authenticator = auth
                });

                var video = new Video();
                video.Snippet = new VideoSnippet();
                video.Snippet.Title = "Demo 1"; 
                video.Snippet.Description = "Demo 1a"; 
                video.Snippet.Tags = new string[] { "tag1", "tag2" };
                video.Snippet.CategoryId = "22"; 
                video.Status = new VideoStatus();
                video.Status.PrivacyStatus = "private"; 
                var filePath = @"C:\wildlife.wmv"; 
                var fileStream = new FileStream(filePath, FileMode.Open);

                var videosInsertRequest = youtube.Videos.Insert(video, "snippet,status", fileStream, "video/*");
                videosInsertRequest.ProgressChanged += videosInsertRequest_ProgressChanged;
                videosInsertRequest.ResponseReceived += videosInsertRequest_ResponseReceived;

                var uploadThread = new Thread(() => videosInsertRequest.Upload());
                uploadThread.Start();
                uploadThread.Join();
4

1 に答える 1

1

別のアカウントにアップロードするために、クライアント ID とシークレットを変更する必要はありません。クライアント ID とシークレットは開発者を定義します。アップロードが行われるチャネルについては、そのログインで承認するだけで済みます。

于 2013-09-19T19:16:14.460 に答える