Объедините файлы и сохраните их в строку - PullRequest
0 голосов
/ 25 марта 2019

https://cloud.google.com/nodejs/docs/reference/storage/1.5.x/Bucket#combine

четко указывает, что вторым параметром объединения может быть

(строка или файл)

Файл, который вы хотите исходные файлыобъединенный в.

Однако, когда мне действительно нравится код ниже:

var logBucket = storage.bucket(projectId);

var sources = [
   logBucket.file(file1),
   logBucket.file(file2)
];

let myString;

logBucket.combine(sources, myString);

console.log(myString);

Я ожидаю получить два комбинированных источника в myString, но я получаю ошибку:

(узел: 39248) UnhandledPromiseRejectionWarning: Ошибка: необходимо указать файл назначения.на Bucket.combine (/Users/joakimmansson/Repo/icm-coworker-tool/server/node_modules/@google-cloud/storage/build/src/bucket.js:627:19)

1 Ответ

2 голосов
/ 25 марта 2019

Если мы посмотрим на документацию объединенного API, на которую вы ссылались, мы увидим, что второй параметр функции определен как:

destination (string or File) - The file you would like the source files combined into.

Указанным местом назначения всегда будет объект Google Cloud Storage (GCS) (файл), который будет заполнен комбинированным содержимым входных источников. Где документация говорит, что destination может быть string или File, что относится к идентичности целевого объекта GCS. Это означает, что можно указать либо объект File, либо строковое имя объекта File, который затем будет создан. У меня есть подозрение, что вы, возможно, думаете, что это будет возвращаемый параметр, который будет строковым значением, содержащим конкатенацию исходных файлов.

...