国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
關(guān)于JS訪問文件服務器的HTTP文件地址實現(xiàn)文件下載

開發(fā)過程中遇到一個需求變動,主管要求網(wǎng)站在提供文件下載的時候不要使用 服務寫流的形式(out.write)進行文件下載。需要改造成將文件生成到 文件服務器路徑下,然后以http的形式直接進行文件訪問、下載。  我想這個訪問http地址顯示文件的方式,大家應該都回使用到,比如:需要加載遠程圖片時。而現(xiàn)在需要實現(xiàn)的是文件下載...

(需求:下載文件類型為PDF文件)

剛開始還以為直接使用 window.open()或者 就能夠輕松實現(xiàn)下載,說到這里是不是很天真。

上面這兩種方式貌似之后再返回的是壓縮包的情況下才會下載。而PDF使用這個方法360,google等瀏覽器中都回直接進行文件預覽。

所以上面的兩種方法就被我排除了。

于是我開始了百度,搜索了半天,發(fā)現(xiàn)有兩種解決方案:

一、使用第三方插件的形式,如:jQuery的插件jdownload,但是它是以彈出框提示信息的形式,需要客戶再點擊彈出框的下載按鈕后才能進行文件下載,------排除。

二、使用iframe實現(xiàn)文件下載

具體實現(xiàn)方式:

[html] view plain copy

print?

//觸發(fā)函數(shù)  

function downloadfile(url) {  

var iframe = document.createElement("iframe");  

iframe.src = url;  

iframe.style.display = "none";  

document.body.appendChild(iframe);  

}  這種方式也有缺陷,只能IE瀏覽器才能進行下載,使用google瀏覽器時就報錯了,錯誤如下:

Resource interpreted as Document but transferred with MIME type application/pdf

根據(jù)這個錯誤提示我又開始尋找解決方案, 由于訪問圖片是根據(jù)tomcat服務器,我就想是不是tomcat服務器的mime-type缺少了application/pdf類型而導致的。然后我就找到了tomcat的web.xml文件,卻發(fā)現(xiàn)mime-type中有application/pdf這個類型。  又一次進入蒙圈的狀態(tài)····

又開始找啊找,又找到了一種方式,html5為 標簽提供了一個download屬性,會將標簽訪問路徑后的資源進行下載, download中填寫的是下載后的文件名。這個方法總算是解決了我的問題。 具體實現(xiàn)方式:

[html] view plain copy

print?

//js方法  

$.post(url,{param1,param2},function(data){            

if(data.code==0){  

try{   

var a = document.getElementById("downPdf");  

a.href=data.url;  

a.download=data.fileName;  

a.click();  

}catch(e){   

}   

}else{  

alert(data.errorMsg);  

}                                 

});   

為了解決這個問題,我是繞了一圈又回到原點,說多了都是淚啊。  希望這個解決方案能夠幫助到大家。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
怎樣提高網(wǎng)站訪問速度縮短網(wǎng)頁加載時間
PDF文件如何防止被復制 PDF限制打印的方法
Caddy文件共享服務器搭建、web文件服務器搭建法
如何實現(xiàn)js跨域調(diào)用
pdf.js使用教程
Html5大文件斷點續(xù)傳實現(xiàn)方法
更多類似文章 >>
生活服務
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服