Поскольку домен BLOB недоступен для некоторых устройств, я должен использовать свой портал (ASP.NET MVC 5) для маршрутизации запроса. Вот код:ASP.NET MVC 5, возвращает изображение из BLOB
public class ImageController : Controller
{
[HttpGet]
public async Task<HttpResponseMessage> GetImage()
{
UriBuilder uriBuilder = new UriBuilder()
{
Scheme = "https",
Host = "portalvhdszhm9fnx146yln.blob.core.windows.net",
Path = "ads/logo.jpg"
};
using (HttpClient client = new HttpClient())
{
return await client.GetAsync(uriBuilder.ToString());
}
}
}
Я намерен сделать контроллер маршрутизатором для файла blob. Но контроллер возвращает следующее:
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/10.0
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
X-SourceFiles: =?UTF-8?B?RTpcTXlQcm9qXEF1dGhDbG91ZFxBdXRoQ2xvdWRQb3J0YWxcaW1hZ2VcZ2V0aW1hZ2U=?=
X-Powered-By: ASP.NET
Date: Tue, 22 Sep 2015 17:21:02 GMT
Content-Length: 539
StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
x-ms-request-id: 3fad2a06-0001-004b-7f5b-f549ad000000
x-ms-version: 2009-09-19
x-ms-lease-status: unlocked
x-ms-blob-type: BlockBlob
Date: Tue, 22 Sep 2015 17:21:01 GMT
ETag: 0x8D2BB762EED052B
Server: Windows-Azure-Blob/1.0
Server: Microsoft-HTTPAPI/2.0
Content-Length: 27780
Content-MD5: pddt6QJK1FjJgiMTp5HKGQ==
Content-Type: application/octet-stream
Last-Modified: Sat, 12 Sep 2015 13:29:28 GMT
}
Я хочу показать изображение блоба, когда требуется контроллер. Каков правильный код?
Вы пытались вернуть «FileResult»? – mason
Не могли бы вы предоставить пример кода возврата FileResult? –