【问题标题】:PDF download fails in Android BrowserAndroid 浏览器中的 PDF 下载失败
【发布时间】:2014-05-03 11:11:14
【问题描述】:

我有一个动态生成 pdf 的 ASP.Net WebForm。 pdf 下载适用于所有桌面浏览器,以及 iPad、Chrome 手机和 Firefox 手机。但是,在 Android 浏览器中下载 pdf 失败,并在通知区域显示“下载失败”消息。我正在使用此代码将 pdf 写入响应:

using (PdfDocument pdf = this.RenderPDF())
using (MemoryStream stream = new MemoryStream())
{
    pdf.Save(stream, false);
    response.Clear();
    response.AddHeader("content-disposition", "inline;filename=myPdf.pdf");
    response.AddHeader("content-length", stream.Length.ToString());
    response.ContentType = "application/pdf";
    response.BinaryWrite(stream.ToArray());
    response.Flush();
    stream.Close();
    response.End();
}

我应该做些什么不同的事情才能让 pdf 下载在 Android 浏览器中工作?

【问题讨论】:

  • 你试过并得到最终解决方案吗?

标签: android asp.net pdf mobile browser


【解决方案1】:

既然您说 PDF 是由表单生成的,我假设这是对 POST 的响应。我遇到了同样的问题,并在类似的 S/O 问题上找到了 this comment:

问题是由于 Android 浏览器和 Dolphin 中的错误导致下载在 POST 操作时失败。我将操作更改为 GET 作为解决方法。

引用的问题是 Support download of POST responses - 自 2009 年开放!


(这个问题在 S/O 上有几个尚未解决的迭代;关闭或回答它们似乎都不合理,那么一些链接怎么样:

【讨论】:

    猜你喜欢
    • 2016-04-16
    • 1970-01-01
    • 1970-01-01
    • 2013-03-22
    • 2018-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-26
    相关资源
    最近更新 更多