Как получить авторизованный токен для аналитики Youtube с помощью Google App Script - PullRequest
0 голосов
/ 14 ноября 2018

Я хочу получить авторизованный токен для приложения App Script для YouTube Analytics. В настоящее время я использую библиотеку cGoa для получения Авторизованного токена, который требует аутентификацию один раз, как указано в по этой ссылке .. Но для в целях безопасности мы не хотим использовать внешний скрипт, такой как так называемая библиотека cGoa. Пожалуйста, мне нужно знать любые другие способы получения токена доступа Oauth2 для YouTube Analytics в Google App Script. Наша главная цель - иметь токен раз и навсегда в будущем, потому что мы хотим автоматически запускать скрипт ежедневно. Поэтому нам нужно что-то, что будет работать все время без дополнительной аутентификации. В настоящее время это код, который я использую, чтобы получить токен с cGoa Llibrary.

function oneOffScript() {
  var options =  {
    packageName: 'youtube-analytics', // user defined
    clientId: '942097727718-t663ep631aqhd75610g4etpcn3foj827.apps.googleusercontent.com',
    clientSecret:'Ng_9HJ34hKSPesvRA6hb85KR',
    // following method to add Google scopes. Here we are mixing YouTube Data and Analytics (prefixed yt-) 
    // in the same service allowing calls to both APIs with the same token (we can do this because both are Google APIs)
    // More on mixing services http://ramblings.mcpher.com/Home/excelquirks/goa/mutipleconsent
    scopes : cGoa.GoaApp.scopesGoogleExpand (['youtube',
                                              'youtube.force-ssl',
                                              "youtubepartner",
                                              "youtubepartner-channel-audit",
                                              "yt-analytics-monetary.readonly",
                                              "yt-analytics.readonly"]),
    service:'google' // always this for Google APIs. Ref: http://ramblings.mcpher.com/Home/excelquirks/goa/services
  };
  // store one off in user properties
  cGoa.GoaApp.setPackage(PropertiesService.getUserProperties(), options);
}
 
function doGet(e) {
  var goa = cGoa.GoaApp.createGoa ('youtube-analytics',
       PropertiesService.getUserProperties()).execute (e);
   
  if (goa.needsConsent()) {
    return goa.getConsent();
  }

Пожалуйста, ваш ответ высоко ценится. Спасибо

...