У меня есть служба WCF REST с хранилищем BLOB-объектов Azure.Я не хочу использовать свой сервис в качестве прокси-сервера с потоком, поэтому я хотел перенаправить запрос клиента на абсолютный URL-адрес большого двоичного объекта, но он перенаправляет в файл и пытается открыть его напрямую.Все, что я хочу, это запустить процесс загрузки, когда сервер перенаправляет запрос на абсолютный URL-адрес большого двоичного объекта.Код, который я попробовал, приведен ниже:
var sas = blob.GetSharedAccessSignature(new SharedAccessPolicy
{
Permissions = SharedAccessPermissions.Read,
SharedAccessStartTime = DateTime.UtcNow,
SharedAccessExpiryTime = DateTime.UtcNow + TimeSpan.FromMinutes(1)
});
WebOperationContext.Current.OutgoingResponse.ContentType = blob.Properties.ContentType;
WebOperationContext.Current.OutgoingResponse.ContentLength = blob.Properties.Length;
WebOperationContext.Current.OutgoingResponse.Location = blob.Uri.AbsoluteUri+sas;
WebOperationContext.Current.OutgoingResponse.StatusCode = HttpStatusCode.Redirect;
PS Я пытался изменить код состояния на Перенаправление, Перемещение ... и т. Д., Но ничего не изменилось.
Обновление Если я изменю ContentType на application / octet-stream, в IE это будет выглядеть так:
<base64Binary xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
...
</base64Binary>