我有一个动态生成pdf的ASP.Net WebForm。 pdf下载适用于所有桌面浏览器,以及iPad,Chrome移动和Firefox移动。但是,在Android浏览器中,pdf下载失败并显示消息" Download Unsuccessful"在通知区域。我正在使用以下代码将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浏览器中运行?
答案 0 :(得分:1)
由于您说PDF是由表单生成的,因此我假设它是对POST的响应。我遇到了同样的问题,并在类似的S / O问题上找到了this comment:
问题是由于Android浏览器和Dolphin中的错误导致POST操作下载失败。我将我的行动改为GET作为解决方法。
引用的问题是Support download of POST responses - 自2009年开始营业!
(这个问题在S / O上有几次迭代;关闭或回答它们都不合理,所以一些链接怎么样: