【问题标题】:cfheader cfcontent Mobile Browser download unsuccessfulcfheader cfcontent 手机浏览器下载不成功
【发布时间】:2012-06-11 16:55:34
【问题描述】:

我正在提供一个 .ePub 文件以供下载,但没有向客户端显示 URL。下面的代码适用于 PC/Mac 上的任何浏览器,但不适用于移动浏览器,至少在我目前测试的 Android 中是这样。我每次都会收到“下载失败”的消息。有什么想法???

代码:

<cfheader name="content-disposition" value="attachment;filename=#authStuff.lastname#-#theTitle#.ePub" /><cfcontent type="application/unknown" file="d:\home\sample.net\bookSource\#book.ePub#">

【问题讨论】:

    标签: android iphone ipad coldfusion


    【解决方案1】:

    我见过和使用过的所有例子在附件之间都有一个空格;和文件名,所以你可以试试:

    <cfheader name="content-disposition" value="attachment; filename=#authStuff.lastname#-#theTitle#.ePub" />
    

    此外,请使用 FireBug 或 Fiddler 确保标头未更改。桌面浏览器会提示您使用正确的文件名进行保存吗?

    编辑:刚刚使用 pdf 在 ios 上尝试了您的代码,并且愉快地使用了 pdf,因此该空间可能是一个红鲱鱼,但这让我认为可能值得尝试下面的代码来尝试看看它是否一个 ePub 的东西或一个标题的东西:

    <cfheader name="content-disposition" value="attachment;filename=something.pdf" />
    <cfcontent type="application/unknown" file="#expandpath('something.pdf')#">
    

    【讨论】:

      【解决方案2】:

      尝试对您的代码进行以下两项更改:

      1) 将 content-disposition 文件名用引号括起来(使用双引号将它们转义,或使用 #Chr( 34 )# 以免它们与您的值属性引号混淆)。

      2) 使用 application/octet-stream 作为内容类型(实际上应该是 application/epub+zip 但 Android 似乎无法识别)。

      这似乎至少适用于 Android 2.3.5。

      <cfheader name="content-disposition" value="attachment; filename=#Chr(34)##authStuff.lastname#-#theTitle#.ePub##Chr(34)#">
      <cfcontent type="application/octet-stream" file="d:\home\sample.net\bookSource\#book.ePub#">
      

      【讨论】:

      • 奇怪。我能够用您的代码复制“下载不成功”错误,但更改为这个肯定为我在 Android 2.3 上修复了它。是否有可能缓存旧代码?您是否尝试过一个简单的测试,其中文件名和文件路径是硬编码值以排除查询值的问题?例如。文件名=#Chr(34)#test.epub#Chr(34)# and file="D:\temp\test.epub"
      • 是的,我试过了,还是不能下载。我已经在 Android 4.0.4 和 2.3 上进行了测试。我不相信它与文件名有关,因为这段代码在 iOS、Windows 等上完美运行。我想知道是否有另一种方法可以在不提供直接路径的情况下提供文件?....跨度>
      • 如果您使用 Apache 作为您的 Web 服务器,您可以尝试 X-SendFile:bennadel.com/blog/…,但我担心您仍然会遇到 http 内容类型的问题,这对我来说很明显Android 浏览器的问题。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-08
      • 2013-12-24
      • 1970-01-01
      • 1970-01-01
      • 2015-03-17
      • 1970-01-01
      • 2012-12-12
      相关资源
      最近更新 更多