В Chrome 12.0.742.112, если я перенаправляю со следующими заголовками:
HTTP/1.1 302 Found
Location: http://0.0.0.0:3000/files/download.zip
Content-Type: text/html; charset=utf-8
Cache-Control: no-cache
X-Ua-Compatible: IE=Edge
X-Runtime: 0.157964
Content-Length: 0
Server: WEBrick/1.3.1 (Ruby/1.9.2/2011-02-18)
Date: Tue, 05 Jul 2011 18:42:25 GMT
Connection: Keep-Alive
Что, если следовать, возвращает следующий заголовок:
HTTP/1.1 200 OK
Last-Modified: Tue, 05 Jul 2011 18:18:30 GMT
Content-Type: application/zip
Content-Length: 150014
Server: WEBrick/1.3.1 (Ruby/1.9.2/2011-02-18)
Date: Tue, 05 Jul 2011 18:44:47 GMT
Connection: Keep-Alive
Chrome не перенаправляет и не изменяет предыдущую страницу, он просто сообщит следующее предупреждение в консоли:
Ресурс интерпретируется как Документ, но передается с помощью MIME-типа application / zip.
Процесс работает правильно в Firefox, а также отлично работает в Chrome, если я открываю новую вкладку и перехожу непосредственно к http://0.0.0.0:3000/files/download.zip
. Я что-то делаю не так или это ошибка / причуда Chrome?
Попробуйте ниже кода, и я надеюсь, что это будет работать на Вас.
var Interval = setInterval(function () {
if (ReportViewer) {
ReportViewer.prototype.PrintReport = function () {
switch (this.defaultPrintFormat) {
case "Default":
this.DefaultPrint();
break;
case "PDF":
this.PrintAs("PDF");
previewFrame = document.getElementById(this.previewFrameID);
previewFrame.onload = function () { previewFrame.contentDocument.execCommand("print", true, null); }
break;
}
};
clearInterval(Interval);
}
}, 1000);