Начните разработку и отладку на рабочем столе, используя node
, а не эмулятор.Как только ваш код работает без предупреждений и ошибок, начните работать с эмулятором и, наконец, с облачными функциями.
Давайте возьмем ваш код и исправим его части.
bucket.setUserProject("cf-nodejs");
Я сомневаюсь, что ваш проект cf-nodejs
.Введите правильный идентификатор проекта.
const localFilename = '/Users/<username>/sample_copy.txt';
Это не сработает.У вас нет каталога /Users/<username>
в облачных функциях.Единственный каталог, в который вы можете писать, это /tmp
.В целях тестирования измените эту строку на:
const localFilename = '/tmp/sample_copy.txt';
Вы ничего не делаете для ошибок:
.on('error', function (err) { })
Измените эту строку, чтобы хотя бы что-то напечатать:
.on('error', function (err) { console.log(err); })
После этого вы сможете просмотреть вывод в Google Cloud Console -> Драйвер стека -> Журналы.Драйвер стека поддерживает выбор «Облачные функции» - «Имя вашей функции», чтобы вы могли видеть свои выходные данные отладки.
Последний совет, оберните ваш код в блок try / Кроме и console.log сообщение об ошибке вкроме блока.Таким образом, по крайней мере, у вас будет запись в журнале, когда ваша программа падает в облаке.