Bonjour à tous,

Voilà, j'expose le contexte avec ce que j'ai fait, et ce que j'ai pu faire, et le problème sur lequel je bloque depuis quelque temps.

Je suis en train de développer un serveur, un webservice en C++ avec la librairie de microsoft C++ Rest SDK.
J'ai pu setup mon serveur pour prendre en compte les requêtes HTTP en POST comme ceci:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
int main(int argc, const char** argv)
{
     http_listener listenerUpload(L"http://localhost/upload");
 
    try
    {
          listenerUpload
			.open()
			.then([&listenerUpload]() {std::TRACE(L"\nServer started\n"); })
			.wait();
 
          while (true);
    }
    catch (std::exception const & e)
    {
	std::cout << e.what() << std::endl;
    }
}
Je récupère ma requête via ma méthode:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
 
void handle_uploadPostFile(http_request request)
{
   is_authorized(request); //Cette methode sert à vérififier le token, sa validité, sa date d'expiration et les roles de l'utilisateur
 
   auto file = request.body(); //Je veux  récupérer le fichier envoyé ici
 
   boost::filesystem::path path(boost::filesystem::current_path()); //Je crée l'adresse de mon répertoire ou je veux stocker mes fichiers reçu 
   std::string storageFolder{ "\\media" };
   std::string repository{ path.string() + storageFolder };
 
   std::ofstream filePath(repository);
   filePath << file;
 
   request.reply(200, file);   
 
}
Le retour de ma requête "request.reply(200, file);" me retourne ça quand je lui passe par exemple une image:

Nom : postman file request.png
Affichages : 677
Taille : 89,2 Ko

Je voudrais stocker ce fichier dans un dossier, je vous ai épargné tout les morceaux de code en commentaire après mes maintes tests.
En espérant que l'on puisse m'aider à résoudre enfin ce problème sur lequel je bute depuis un moment.
Merci d'avoir pris le temps de me lire et m'aider à me sortir de ce problème.