Avatar ·

Wie mache ich einen HTTP-Request in C++?

Hallo zusammen! Könnt ihr mir bitte sagen, wie man einen HTTP-Request (GET/POST) in reinem C++ ohne Verwendung von Drittanbieter-Bibliotheken wie Boost.Beast oder cURL richtig macht? Ich schreibe einen kleinen Konsolen-Client für die Arbeit mit REST API, finde aber keine eingebauten Mittel für die Arbeit mit HTTP.

Ich habe versucht, winsock2 unter Windows und sys/socket.h unter Linux zu verwenden, bin aber auf Probleme gestoßen: Erstens gibt der Server beim Senden eines GET-Requests einen 400 Bad Request-Fehler zurück, zweitens kann ich das chunked transfer encoding in der Antwort nicht korrekt verarbeiten. Hier ist ein Beispiel meines Codes:

#ifdef _WIN32\n#include <winsock2.h>\n#pragma comment(lib, "ws2_32.lib")\n#else\n#include <sys/socket.h>\n#include <netinet/in.h>\n#include <arpa/inet.h>\n#endif\n\n#include <iostream>\n