Een binair bestand hoort als bytes bij de HTTP-client aan te komen. Het met een tekstlezer lezen en de resulterende tekenreeks opnieuw als ASCII coderen kan waarden vervangen voordat de proxy iets ontvangt. Dat een klein tekstvoorbeeld werkt, maakt dat pad niet veilig voor een afbeelding, archief of document.

Vervang in een bestaand .NET-uploadpad die conversie door een binaire bodybron:

using var file = File.OpenRead(path);
using var content = new StreamContent(file);

Voer de inhoud door de geconfigureerde HTTP-upload van de toepassing; het fragment legt de bodybron vast, terwijl de bestaande client nog steeds de methode, bestemming, proxy en levensduur beheert.

Verwijder elke Content-Length die is berekend uit het tekenaantal van de oude tekenreeks. Dat veld meet octetten. Laat de HTTP-bibliotheek de framing uit de bodyrepresentatie opbouwen in plaats van een tekenaantal te koppelen aan een anders gecodeerde buffer.

Kies voor een bewuste tekstupload de codering expliciet en leid een vereiste lengte af uit de verzonden bytes. Die beslissing over tekstformaat mag niet op willekeurige bestanden worden toegepast.

Vergelijk het overgedragen artefact met een betrouwbare verwachte waarde. HTTP-succes bevestigt dat een uploadbewerking op die laag is voltooid; het kan niet aantonen dat een eerdere tekstconversie de oorspronkelijke bytes heeft behouden.

Gerelateerde artikelen