На Windows, если я создаю файл и добавляю атрибут только для чтения, а затем выполняю этот вызов:
console.log('a');
let fileWriteStream = fs.createWriteStream('D:\\read-only-file.txt');
console.log('b');
console.log('c');
Я вижу это в консоли Chrome:
a
b
Uncaught Error: EPERM: operation not permitted, open 'D:\read-only-file.txt'
c
Но есть ли способ действительно отловить эту ошибку? Если я go попробую все равно использовать поток записи файлов (т.е. канал с http), он на самом деле ничего не сделает. Если я добавлю этот обработчик:
fileWriteStream.on('error', function (err) {
console.log('in error...');
});
Обработчик ошибок не вызывается. Это похоже на то, что это исключение только для чтения внутренне осиротело. Есть ли способ справиться с этой ошибкой?
Спасибо