我正在使用一个webapp,它有一个下载xml文件的链接。如,单击链接,浏览器下载文件。文件从我桌面上的Chrome / FF / Safari按预期下载。当我将用户代理欺骗为iPad时,它也适用于FF。但是当在iPad上从Mobile Safari点击时,链接会将浏览器导航到新页面,并尝试将xml显示为html,而不下载任何内容。
目前,HTTP响应包含以下标题:
Content-Disposition:attachment; filename="myFile.xml"
Content-Type:application/octet-stream;charset=UTF-8
据我了解,这两个HTTP标头应该告诉浏览器下载,而不是显示响应流。
有人知道为什么在iPad上运行的Mobile Safari不起作用吗?
答案 0 :(得分:5)
MobileSafari通常不会下载文件,即使在HTTP标头中指示也是如此。例如,从MobileSafari的网站下载MP3是不可能的,它只是要播放它。这源于没有用户可访问文件系统的iPhone / iPad - 如果您无法访问文件系统,则无法保存或访问下载的文件。因此,由于MobileSafari无法下载文件,因此无论HTTP标头是什么,它都会尝试显示它。