У меня проблема с загрузкой файлов на диск Google с использованием пакета googleapis (v.40):
В моем веб-приложении (написанном на Vue js) мне нужно загрузить файл изображения пользователя "A" в пространство на диске Google пользователя "B", используя googleapis.
Для этого я создал «учетную запись службы» из консоли консоли Google (пользователя B) и сгенерировал credentials.json для доступа к API. (JWToken, сервис-сценарий)
В моем веб-приложении после получения AccessToken с помощью учетных данных json учетной записи службы я готов загрузить файл. Но когда я вызываю api drive.files.create (...), я получаю следующую ошибку:
Недопустимый составной запрос с 0 частями MIME.
Вот код:
...
// get google api
const {google} = require("googleapis");
const drive = google.drive("v3");
// get authorization token
let authToken = await getAuthToken() // it perfectly works
console.log(authToken)
let metadata = {
name: name,
parents: [idOfTheParentFolder]
}
let media = {
mimeType: 'image/jpeg',
body: file
}
let objImage = {
auth: authToken,
resource:metadata,
media: media,
fields: 'id',
}
drive.files.create(objImage, function (error, success) {
if (!error) {
...
}
else{
// here i got the error in question
}
})
Я пробовал именно этот код в js-файле с одним узлом, и он отлично работает, но не работает в приложении Vue веб-браузера.
Позвольте мне сначала сказать, что API для отображения файлов (drive.files.list ()) и API для создания папки (drive.files.create ()) они прекрасно работают в моем веб-приложении.
Есть предложения?