Google API - идентификатор файла не найден - но возвращенные данные соответствуют введенной мной папке. - PullRequest
0 голосов
/ 31 мая 2018

Я пытаюсь отправить данные на диск Google через API Google Drive.

Я ожидаю, что файл, который я пытаюсь отправить, попадет в папку на моем диске Google.Я ввел идентификатор папки в этой цели.

С простой загрузкой API-интерфейса Google Drive кажется, что загрузка осуществлена, но даже после этого я не могу найти загруженный файл в базе данных после.

Я пытаюсь использовать функцию создания Google из Google Drive API документация.

Дело в том, что я ввел идентификатор папки.Консоль возвращает мне, что идентификатор файла не найден, я не понимаю этого странного поведения.

Здесь консоль возвращает:

Ошибка: файл не найден в createError _redirectable: [Object],

[Symbol (outHeadersKey)]: ​​[Object]},

данные: {ошибка: [Объект]}}, код: 404, ошибки: [{домен: «глобальный»,

причина: «не найден», сообщение: «Файл не найден»: 1ZTCEjsqIH8NoB5xpo1AD32wBrV6bpsKI. ', LocationType:' parameter ', location:' fileId '}]}

На данный момент я нашел некоторую документацию по документации Google :

404: файл не найден: {fileId} У пользователя нет доступа на чтение к файлу или файл не существует.

{"error": {"errors": [{"домен": "глобальный", "причина": "не найден", "сообщение": "файл не найден {fileId}"}], "код": 404, "сообщение": "файл не найден: {fileId}"}}

Вот мой app.js:

// call the function
module.exports.insertDrive = function (req, auth) {
  console.log("callback reached.")

// folder ID 
var folderId = '0BwwA4oUTeiV1TGRPeTVjaWRDY1E';
// set the metadata of my file
var fileMetadata = {
  'name': req.body.word,
  parents:  [folderId]
};

// media type and path
var media = {
  mimeType: 'audio/*',
  body: fs.createReadStream(path.join(__dirname, "birds.mp3"))
};

// trying to create the file
drive.files.create({ // create error is probably link to drive.files.create
  auth: jwtClient,
  resource: fileMetadata,
  media: media,
  // returns only the file id
  fields: 'id' 
}, function (err, file) {
  if (err) {
    // Handle error
    console.error(err);
  } else {
    console.log('File Id: ', file.id);
  }
  console.log("callback accomplished.")
})};

Спасибо

1 Ответ

0 голосов
/ 04 июня 2018

Вы можете проверить этот учебник, который объяснит вам основы устройства Google Api:

По сути, вы должны убедиться, что сделали правильный запрос на получение веб-токена json.Затем воспользуйтесь авторизацией, чтобы сделать запрос к папке на диске Google.Кроме того, убедитесь, что вы указали папку, на которую вы нацелены, по электронной почте созданной вами учетной записи службы.Наконец, чтобы получить некоторый идентификатор, вы должны использовать определенный синтаксис как «file.data.id».

Вот учебник:

https://www.youtube.com/watch?v=gGSJpp6_ax0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...