JavaScript - Что является вторым элементом в массиве в ответе обратного вызова ipfs.add ()? - PullRequest
0 голосов
/ 13 марта 2019

У меня следующий файл загружен в Express.js API с использованием Multer

[ { fieldname: 'file',
    originalname: 'file.pdf',
    encoding: '7bit',
    mimetype: 'application/pdf',
    destination: 'temp/',
    filename: 'b9e10b5ecce35483ff38c0e83b41a9f5',
    path: 'temp/b9e10b5ecce35483ff38c0e83b41a9f5',
    size: 456904 } ]

Я передал его протоколу IPFS с ipfs.add () , используя следующую функцию

ipfs.add({
  path: listItem.path,
  content: fileBuffer,
}, (err, file) => {
  if (err) reject(err);
  console.log(file)
});

Который в console.log() возвращает следующий вывод

[ { path: 'temp/b9e10b5ecce35483ff38c0e83b41a9f5',
    hash: 'QmUNLLsPACC***',
    size: 4 },
  { path: 'temp',
    hash: 'QmfQjRQnQkV***',
    size: 82 } ]

У меня вопрос: почему появляется второй элемент, если предполагается, что он просто добавляет файл PDF, и почему в нем в качестве пути указана моя папка temp , он загружает в нее все?

1 Ответ

0 голосов
/ 13 марта 2019

Это автоматически созданный каталог для хранения файла.Путь, который вы передаете, имеет temp/ в начале, поэтому каталог создается.

Взят непосредственно из документации по .add():

Обратите внимание, что промежуточные каталоги в путях к файлам будут автоматически созданы и возвращены в ответ вместе с файлами:

...