Ошибка: порождает EACCES в лямбда-функции Node AWS, используя child_process для вызова двоичного файла - PullRequest
0 голосов
/ 07 января 2019

У меня есть этот упрощенный код в лямбда-функции AWS, основанной на узле:

import { execFile } from 'child_process';
execFile('./node_modules/webp/bin/dwebp', ['./tmp/file.wepb', '-o', 
'./tmp/newFile.png'], (error, stdout, stderr) => {
  if (error) throw error;
});

Как показано, у меня есть двоичный файл в node_modules/webp/bin, и я вызываю его с execFile, чтобы сохранить вывод в папке ./tmp/, но я получаю ошибку Error: spawn EACCES. Возможно, мне не отказано в доступе к папке ./tmp/, потому что мой код успешно записывает в нее файлы. Мне может быть отказано только в доступе к самой команде dwebp. Я не знаю, как справиться с этим. Надеюсь, что вы можете помочь.

1 Ответ

0 голосов
/ 08 января 2019

Добавление моего комментария в качестве ответа, поскольку оно, похоже, решило вашу проблему.

Запись в папку означает, что у вас есть права на запись. Возможно, вам все еще не хватает прав на выполнение.

Вы можете редактировать разрешения в Узле, используя chmod из модуля fs. Документацию можно найти здесь.

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