Синхронизация вызовов в Node.js для анализа запроса и отправки ответа после обработки запроса

#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, когда методы распределяются по файлам тремя разными способами.