Как добавить видеоконтент в Api gapi YouTube вставки - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть приложение реагирования, которое в настоящее время аутентифицирует гени-клиент. Я проверил эту функцию, вызвав API для получения каналов, используя клиент с «gapi.client.youtube.channels.list», и все, кажется, работает нормально

У меня также есть запрос ax ios, который вызывает локальный файл mp4 и возвращает необработанные данные из файла. Это снова, кажется, работает правильно и сохраняет необработанные данные в переменную

Теперь, когда я пытаюсь вызвать API загрузки, я получаю сообщение об ошибке: «Запрос не включает в себя видео контент» с Код 400.

Мой код загрузки можно увидеть ниже. Необработанные видеоданные сохраняются в переменную «rawVideoData»

//get the file data
Axios.get('http://myURL/video.mp4')
.then((res) =>{
  let rawVideoData = new Blob([res.data], {type:'video/mp4'})

  //run the upload code here...
}
.catch((e) =>{
  console.log(e)
})

//this is the upload code (would be running inside the Axios.then)
try{
    let req = gapi.client.youtube.videos.insert({
      part:'id,snippet,status',
      notifySubscribers:false,
      mimeType:'video/mp4',
      requestBody:{
        snippet:{
          title:"test video",
          description:"this is a test video"
        },
        status:{
          privacyStatus:'unlisted'
        }
      },
      media:{
        body:rawVideoData
      }
    })
    req.execute((response) =>{
      console.log(response)
    })
  }catch(e){
    console.log(e)
  }

Я изо всех сил пытаюсь найти какие-либо документы, которые предлагают, как структурировать эту часть запроса.
Я также попробовал следующие настройки

    let req = window.gapi.client.youtube.videos.insert({
      part:'id,snippet,status',
      notifySubscribers:false,
      mimeType:'video/mp4'
      requestBody:{
        snippet:{
          title:"test video 5",
          description:"this is a test video"
        },
        status:{
          privacyStatus:'unlisted'
        },
        media:{
          body:rawVideoData
        }
      }
    })


    let req = window.gapi.client.youtube.videos.insert({
      part:'id,snippet,status',
      notifySubscribers:false,
      mimeType:'video/mp4'
      requestBody:{
        snippet:{
          title:"test video 5",
          description:"this is a test video"
        },
        status:{
          privacyStatus:'unlisted'
        },
        body:rawVideoData
      }
    })


    let req = window.gapi.client.youtube.videos.insert({
      part:'id,snippet,status',
      notifySubscribers:false,
      mimeType:'video/mp4'
      requestBody:{
        snippet:{
          title:"test video 5",
          description:"this is a test video"
        },
        status:{
          privacyStatus:'unlisted'
        }
      },
      body:rawVideoData
    })

Все вышеперечисленное выдает одинаковую ошибку. Кто-нибудь знает, как мне нужно прикрепить видеоданные к запросу?

...