Den Input liest du ja bereits (HTTP-Header) ... danach kommt eine Leerzeile und dann die Daten (von deinem POST)
Nicht nur, dass dir eine HTTP-Komponente vieles abnimmt (Header parsen/lesen und beim Senden auch generieren)
auch für HTTP/2 und HTTP/3, also z.B. HTTPS oder zukünftig QUIC müsstest du dann nichts selber bauen, weil sowas dann ja von Anderen eingebaut würde.
PS: Mit HTTP/3 überlegt man sich von
TCP auf UDP umzustellen. (ja, die ersten Webseiten und Browser können es schon ... testweise)
https://www.stackscale.com/blog/http3/
Die HTTP-Komponente gibt dir einmal eine Header-Liste und auch die entsprechenden Streams vom Content (Input) und Response (zum Senden).