Verwenden Sie C# httpclient 4.5, um Multipart -Formulardaten zu hochladen
Die Klasse .NET 4.5 HTTPClient Class vereinfacht das Hochladen von Dateien und strukturierten Daten über eine einzelne HTTP-Multipart/Form-Daten-Anforderung. Dieser Leitfaden zeigt den Prozess:
<code class="language-csharp">public static async Task<string> UploadFile(byte[] imageData) { using (var client = new HttpClient()) { using (var content = new MultipartFormDataContent($"Upload----{DateTime.Now.ToString(CultureInfo.InvariantCulture)}")) { content.Add(new StreamContent(new MemoryStream(imageData)), "bilddatei", "upload.jpg"); using (var response = await client.PostAsync("http://www.directupload.net/index.php?mode=upload", content)) { var responseBody = await response.Content.ReadAsStringAsync(); return !string.IsNullOrEmpty(responseBody) ? Regex.Match(responseBody, @"http://\w*\.directupload\.net/images/\d*/\w*\.[a-z]{3}").Value : null; } } } }</code>
Dieser Code -Snippet erstellt ein HttpClient
und ein MultipartFormDataContent
-Objekt, das die Grenze für die Mehrpartikelanforderung definiert. Die Bilddaten werden als StreamContent
hinzugefügt, wobei der Formularfeldname ("bilddatei") und den Dateinamen ("upload.jpg") angegeben werden.
Die Methode PostAsync
sendet die Daten an die angegebene URL. Die Reaktionsbehörde wird dann analysiert und ein regelmäßiger Ausdruck extrahiert die URL der hochgeladenen Datei. Fehlerbehandlung (z. B. Überprüfung response.IsSuccessStatusCode
) könnte zur Robustheit hinzugefügt werden.
Das obige ist der detaillierte Inhalt vonWie lade ich mehrteilige Formulardaten mit HTTPClient in C# 4.5 hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!