Я пишу контроллер API и пытаюсь заставить его вернуть файл jpg. Однако даже если тип содержимого установлен на «application / jpg», мое ответное сообщение продолжает возвращать json.
public HttpResponseMessage Get()
{
var path = @"C:\Temp\Sample\background.jpg";
var result = new HttpResponseMessage(HttpStatusCode.OK);
var stream = new FileStream(path, FileMode.Open);
result.Content = new StreamContent(stream);
result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/jpg");
result.Content.Headers.ContentType.MediaType = "application/jpg";
result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = "background.jpg"
};
stream.Close();
return result;
}
После вызова контроллера это то, что он возвращает:
{
"version": {
"major": 1,
"minor": 1,
"build": -1,
"revision": -1,
"majorRevision": -1,
"minorRevision": -1
},
"content": {
"headers": [
{
"Key": "Content-Type",
"Value": [
"application/jpg"
]
},
{
"Key": "Content-Disposition",
"Value": [
"attachment; filename=background.jpg"
]
}
]
},
"statusCode": 200,
"reasonPhrase": "OK",
"headers": [],
"trailingHeaders": [],
"requestMessage": null,
"isSuccessStatusCode": true
}