Próbuję poniższy kod do wyjścia obrazu z ASP.NET Web API, ale długość ciała odpowiedź jest zawsze 0.wyjście obrazu przy użyciu Web API HttpResponseMessage
public HttpResponseMessage GetImage()
{
HttpResponseMessage response = new HttpResponseMessage();
response.Content = new StreamContent(new FileStream(@"path to image"));
response.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpeg");
return response;
}
jakieś wskazówki?
działa:
[HttpGet]
public HttpResponseMessage Resize(string source, int width, int height)
{
HttpResponseMessage httpResponseMessage = new HttpResponseMessage();
// Photo.Resize is a static method to resize the image
Image image = Photo.Resize(Image.FromFile(@"d:\path\" + source), width, height);
MemoryStream memoryStream = new MemoryStream();
image.Save(memoryStream, ImageFormat.Jpeg);
httpResponseMessage.Content = new ByteArrayContent(memoryStream.ToArray());
httpResponseMessage.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpeg");
httpResponseMessage.StatusCode = HttpStatusCode.OK;
return httpResponseMessage;
}
Nie jestem całkiem pewien, czy mam cię - ale możesz sprawdzić [** jak napisać obraz do outputStream **] (http://stackoverflow.com/questions/5629251/c-sharp-outputting-image-to -response-output-stream-giving-gdi-error) –
Nie otrzymuję błędu, po prostu nic nie otrzymuję. – lolol
jaki kod statusu otrzymujesz? –