我有一個基於請求中的某些參數使PDF實時響應的servlet。當我嘗試在IE中打開/下載此文件時,我收到以下消息:在HTTP請求中創建的PDF不會在Internet Explorer中打開
「無法從[站點]下載[文件名]。 無法打開此Internet站點。請求的站點要麼不可或不可能找到了,請稍後再試。「
這是我設置爲響應:
response.setHeader("Content-Disposition", "attachment;filename=" + title + ".pdf");
response.setContentType("application/pdf");
一切工作正常與其他瀏覽器。
更新:
我試過的內聯,而不是附件。這將打開一個新窗口而不是打開/保存對話框(我寧願有對話框),錯誤消息消失了,但新窗口在IE中只是空的。仍在與其他瀏覽器合作。
我試過圍繞文件名的簡單,雙引號和不引號,它不包含任何非轉義字符。雙引號和不引號沒有什麼區別,但是單引號會附加到文件名,我當然不想要。
文件名不包含未轉義的字符。
我檢查了this頁面上的測試,其中說attachement, with filename, no quotes已通過所有瀏覽器。這是從一開始就使用的。
添加Content-Lenght標頭沒有區別。順便說一句,飛碟是用來製作PDF的。
謝謝,這是非常有用的。但是測試用例等於我的頭文件被傳遞給所有瀏覽器。標題中也沒有未轉義的值。 – Karine
什麼是您正在發送的標題的全部價值?而對於調試,發送的所有其他響應頭還有哪些? –