2010-02-19 2 views
1

Я пытаюсь использовать YouTube API для загрузки видео из браузера. Я прочитал документацию API Google и написал этот кусок кода:Ошибка аутентификации API YouTube

public static YouTubeRequest GetRequest() 
    { 
     var request = HttpContext.Current.Session["YTRequest"] as YouTubeRequest; 
     if (request == null) 
     { 
      var settings = new YouTubeRequestSettings("WebApp", "NA", ConfigurationManager.AppSettings["YouTubeAPIDeveloperKey"]); 

      settings.AutoPaging = true; 
      request = new YouTubeRequest(settings); 
      HttpContext.Current.Session["YTRequest"] = request; 
     } 
     return request; 
    } 

var youTubeRequest = GetRequest(); 
var newVideo = new Video { Title = "Title", Description = "Description" }; 
newVideo.YouTubeEntry.Private = false; 

var token = youTubeRequest.CreateFormUploadToken(newVideo); 
var postUrl = token.Url; 
var tokenValue = token.Token; 

Но я всегда получаю сообщение об ошибке: Удаленный сервер возвратил ошибку: (401) Несанкционированный.

на этой линии:

var token = youTubeRequest.CreateFormUploadToken(newVideo); 

Я думаю, что моя проблема не связана с ключом API разработчика. Он правильно схвачен с панели инструментов API.

Любая идея?

+0

Забыл сказать, я отправляю этот запрос с моей локальной машины. Это важно? –

+1

я изменил YoutubeRequest с настройками переменная = новыми YouTubeRequestSettings ("RazmpaWebApp", "NA", ConfigurationManager.AppSettings [ "YouTubeAPIDeveloperKey"], "--USERNAME--", "--PASSWORD--"); И теперь я получаю эту ошибку: Удаленный сервер возвратил ошибку: (400) Плохой запрос. –

ответ

3

Я сам нашел проблему!

newVideo.Keywords = "some keywords"; 

не требуется, и вы должны отправить его.

Обратите внимание, что ранее я объяснял, что изменил параметры YouTubeRequest, чтобы избавиться от сообщения об ошибке 401 (см. Мои собственные комментарии).