Загрузите файл .wav с asp.net в Internet Explorer - PullRequest
3 голосов
/ 08 июля 2010

Я просто пытаюсь отправить WAV-файл в Internet Explorer с помощью обработчика ASP.net:

public void ProcessRequest(HttpContext context)
{
    HttpResponse response = context.Response;
    response.ContentType = "audio/x-wav";
    response.WriteFile("MyWav.wav");
    response.AddHeader("Content-Length", "304578");

    response.Flush();
}

Это работает для Firefox и Chrome, но я просто представляю пустой экран в Internet Explorer. Зачем?

(Я попытался установить заголовок «Content-Disposition». Если я установил его на «attachment», я am представлен в диалоге загрузки. Если я установил его на «inline», я просто получить пустую страницу, как раньше.

Ответы [ 2 ]

1 голос
/ 08 июля 2010

Вы можете попытаться встроить его в объект

<object
classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95">
<param name="AutoStart" value="1" />
<param name="FileName" value="GiveYourPageNameHere.aspx" />
</object>

Страница, которая отправляет wav-файл в браузер, также может выступать в качестве источника, как я упоминал в примере выше, или вы можете напрямуюукажите имя файла.

0 голосов
/ 09 июля 2010

Оказывается, что IE пытается быть умным и игнорирует заголовки HTTP, и, если в URL нет .wav, он принимает его текст.

Это было подтверждено путем установки псевдонима URL /foo/bar.wav?audioId=123, указывающего на /foo/baz?audioId=123. При непосредственном доступе в IE ничего не отображается, но при обращении через псевдоним он отображает и воспроизводит файл .wav.

...