我有电子商务网站并上传了一些mp3文件,客户可以将mp3文件下载到PC,但当他们尝试将它们下载到iPad时,iPad无法下载。
下载文件的代码如下
public static void DownloadAudio(string url)
{
if (HttpContext.Current.CurrentHandler is basePage)
{
HttpContext.Current.Response.Clear();
string fileDiskPath = HttpContext.Current.Server.MapPath(url);
FileInfo fileInfo = new FileInfo(fileDiskPath);
HttpContext.Current.Response.ContentType = "audio/mp3";
HttpContext.Current.Response.AddHeader("Content-Disposition", String.Format("attachment;filename={0}", fileInfo.Name));
HttpContext.Current.Response.AddHeader("Content-Length", fileInfo.Length.ToString());
HttpContext.Current.Response.WriteFile(fileDiskPath);
//HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
else
{
throw new NotSupportedException("Note: This method is not supporting user controls. Consider supporting user controls by getting the parent page from user control.");
}
}
答案 0 :(得分:1)
iPad上的Safari浏览器只允许用户下载他们已经安装了可以处理它的应用程序的文件 - 默认情况下,没有内置的iOS应用程序可以处理任意下载或MP3文件。
如果您的访问者安装了GoodReader等应用,则Mobile Safari会提示用户在GoodReader中打开下载。
答案 1 :(得分:0)
尝试使用官方MIME类型。
HttpContext.Current.Response.ContentType = "audio/mpeg";