ปัญหา
ฉันต้องการส่งคืนไฟล์ใน ASP.Net Web API Controller ของฉัน แต่วิธีการทั้งหมดของฉันกลับHttpResponseMessage
เป็น JSON
รหัสจนถึงตอนนี้
public async Task<HttpResponseMessage> DownloadAsync(string id)
{
var response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new StreamContent({{__insert_stream_here__}});
response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
return response;
}
เมื่อฉันโทรปลายทางในเบราว์เซอร์ของฉัน Web API ส่งกลับHttpResponseMessage
เป็น JSON กับ HTTP application/json
ชุดหัวเนื้อหาเพื่อ
return File(stream, "application/octet-stream", "filename.xlsx");
วิธีนี้เมื่อดาวน์โหลดผู้ใช้สามารถเปิดได้โดยตรง