Heim >Backend-Entwicklung >C++ >Wie kann ich eine Datei als binäre Antwort in der ASP.Net Core-Web-API zurückgeben?
In der ASP.Net Core-Web-API kann die Rückgabe einer Datei als JSON-Antwort erfolgen lästig. Verständlicherweise möchten Sie die Datei in ihrem ursprünglichen Binärformat zurückgeben. Um dieses Problem zu lösen, müssen wir uns mit dem Konzept der Ergebnistypen in ASP.Net Core befassen.
Verstehen der IActionResult-Schnittstelle
In ASP.Net Core, IActionResult ist eine Schnittstelle, die das Ergebnis einer Aktionsmethode darstellt. Es kapselt den HTTP-Antworttext und den Statuscode und bietet so Flexibilität beim Anpassen der Antwort.
Lösung: Zurückgeben eines FileStreamResult
Um eine Datei zurückzugeben, nutzen wir die FileStreamResult-Klasse, die IActionResult implementiert. Dadurch können wir den Dateistream, den Inhaltstyp und den Dateinamen für die Antwort angeben.
Der folgende Codeausschnitt veranschaulicht diesen Ansatz:
<code class="csharp">[Route("api/[controller]")] public class DownloadController : Controller { [HttpGet("{id}")] public async Task<IActionResult> Download(string id) { Stream stream = await // Get stream based on id here if (stream == null) return NotFound(); // Handle not found scenario return File(stream, "application/octet-stream", "filename.ext"); } }</code>
In diesem Code:
Hinweis:
Das obige ist der detaillierte Inhalt vonWie kann ich eine Datei als binäre Antwort in der ASP.Net Core-Web-API zurückgeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!