#javascript #node.js #express
#javascript #node.js #выражать #экспресс
Вопрос:
Я учусь Node.js но у меня возникают проблемы с недооценкой части синхронизации выполнения вызовов методов. Это то, чего я пытаюсь достичь
Данные моего запроса содержат файл, который мне нужно загрузить, и при успешной загрузке файла я должен отправить ответ клиенту о том, что загрузка завершена. До тех пор я хочу, чтобы клиент ждал ответа. Теперь происходит то, что ответ отправляется немедленно, не дожидаясь завершения загрузки и получения пути, поэтому клиенту отправляется пустой путь.
file1.js
{
bodyparse : a file from data request object
uploadedopath = file2.Uploadfile();
console.log(uploadedpath );
response.status (
Uploaded successfuly with uploadedpath ;
}
file2.js
{
UploadFile() {
uploadedpath = file3.UploadToStorageBlob();
return uploadedpath;
}
file3.js
{
UploadToStorageBlob()
{
//connect to blob storage
uploadedpath = azurestorage.uplaodtoBloab(filepath);
return uploadedpath;
}
}
}
Спасибо за вашу помощь!
Комментарии:
1. Ну, по умолчанию все в JS синхронно. Я бы посмотрел на Promises или async-await.
2. Как работают Promises, когда методы распределяются по файлам тремя разными способами.