亚洲av日韩av永久无码久久,免费的视频app网站,欧美性猛交xxxx免费看,国产成人精品三级麻豆

么去控制瀏覽器對資源文件的處理行為

2018-6-26    seo達(dá)人

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請點(diǎn)這里

通常當(dāng)用戶打開一個(gè)資源的url,如果瀏覽器支持這個(gè)格式的文件的情況下,瀏覽器會(huì)嘗試去再頁面里展示它而不是直接下載。例如一張圖片(jpg, png, gif等),幾乎所有瀏覽器都會(huì)去將圖片在瀏覽器里面展示。


對于壓縮格式的文件(zip, tar, gzip等)瀏覽器總是會(huì)直接去下載它們,另外一些格式的文件,根據(jù)瀏覽器的不同也會(huì)有差異的處理方法,例如Microsoft Word文件(doc, docx)在ie瀏覽器下通常會(huì)在瀏覽器中展示,但是其他瀏覽器幾乎都會(huì)直接下載它,同樣的對于PDF文件chrome有自己的pdf 轉(zhuǎn)換器它會(huì)嘗試去在瀏覽器上展示該文件。

強(qiáng)制下載文件

對于瀏覽器這種行為,一般情況下是可以接受的,因?yàn)橛脩艨梢栽跒g覽器顯示文件后將文件保存到電腦中,但是一些情況下用戶可能希望文件直接被下載而不是在瀏覽器中被打開,比如有時(shí)候用戶想去下載一個(gè)歌曲,但是瀏覽器可能回去播放該音頻。那么怎么讓瀏覽器強(qiáng)制去下載文件要怎么做呢

a標(biāo)簽的download屬性

html5中 a 標(biāo)簽新增了 download 屬性,該屬性指示瀏覽器下載url的內(nèi)容而不是導(dǎo)航到url,因此如果配置了此屬性用戶會(huì)直接下載url的內(nèi)容。作為開發(fā)如果想直接觸發(fā)該事件我們可以直接用代碼模擬a標(biāo)簽和點(diǎn)擊事件


    
  1. const link = document.createElement('a');
  2. link.addEventListener('click', function() {
  3. link.download = xxx;
  4. link.href = xxx;
  5. });
  6. const e = document.createEvent('MouseEvents');
  7. e.initEvent('click', false, false);
  8. link.dispatchEvent(e);
  • download屬性只在同域時(shí)候有效,當(dāng)跨域請求時(shí)候該屬性將會(huì)被忽略。
  • 當(dāng)前并非所以瀏覽器都支持該屬性,需要瀏覽器考慮兼容性。

改變資源格式

瀏覽器會(huì)根據(jù)資源類型去判斷是否支持,如果支持時(shí)會(huì)嘗試去在頁面上展示該資源。瀏覽器判斷資源類型是根據(jù)返回頭Content-Type的值,因此一方面我們在服務(wù)端可以設(shè)置返回頭字段為文件流'Content-Type': 'application/octet-stream',或者根據(jù)一些具體資源直接壓縮后傳輸,瀏覽器不能分析zip之類的壓縮文件所以會(huì)直接去下載它們。

配置Content-Disposition

在HTTP場景中,Content-Disposition 消息頭指示回復(fù)的內(nèi)容該以何種形式展示,是以內(nèi)聯(lián)的形式(即網(wǎng)頁或者頁面的一部分),還是以附件的形式下載并保存到本地。

  • inline 默認(rèn)參數(shù)表示消息體會(huì)以頁面的一部分或者整個(gè)頁面的形式展示。
  • attachment 消息體應(yīng)該被下載到本地,將參數(shù)filename的值預(yù)填為下載后的文件名

因此當(dāng)我們希望該資源被直接下載時(shí)候,我們可以設(shè)置返回頭Content-Disposition的值為attachment。


    
  1. //example
  2. Content-Disposition: attachment; filename="fname.ext"

這里設(shè)置名稱時(shí)候,要注意下filename的編碼格式。

用戶自己在瀏覽器設(shè)置

瀏覽器既然定義了該行為,根據(jù)瀏覽器的不同用戶可能在設(shè)置頁面去配置某些格式的文件是否希望瀏覽器去展示該文件。一些有爭議的情況下,你也可以提示用戶自己根據(jù)需求去設(shè)置這些參數(shù)。


藍(lán)藍(lán)設(shè)計(jì)www.chinatradebeam.com )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)


日歷

鏈接

個(gè)人資料

藍(lán)藍(lán)設(shè)計(jì)的小編 http://www.chinatradebeam.com

存檔

推特怎么在国内使用| 亚洲色欲色欲大片www无码| 久久久久成人精品免费播放动漫 | 日韩精品内射视频免费观看| 国产精品天干天干综合网| 日本少妇高潮喷水xxxxxxx| 诱人的奶头bd在线观看| 久久久久久九九99精品| 日本a级毛片| 久久综合狠狠综合久久| 日本japanese熟睡人妻| 亚洲av在线观看| 日本免费一区二区三区视频观看| 高清vpswindows另类乱| 日本人妻丰满熟妇久久久久久| 亚洲日韩欧美一区二区三区| 狠狠色婷婷久久综合频道毛片 | 辽宁少妇高潮45分钟| 国产免费久久精品国产传媒| 叫大声点浪货腿张开点学生| 国产精品自产拍高潮在线观看| 国产无套内射又大又猛又粗又爽| 亚洲性视频| 99偷拍视频精品一区二区| 国产精品原创巨作av| 丰满岳乱妇在线观看中字无码| 啊┅┅快┅┅用力啊岳| 乱人伦人妻中文字幕无码| 人妻夜夜爽天天爽三区麻豆av网站| 教室停电 挺进她体内h| 国产精品另类激情久久久免费| 色欲av无码一区二区三区| 99久久久无码国产精品6| 亚洲av无码乱码国产精品fc2| 亚洲欧美一区二区三区在线| 丰满老熟好大BBB| 娇妻互换享受高潮| 五月香丁激情欧美啪啪| 丰满人妻一区二区三区免费视频 | 性一交—乱一性一A片在线播放| 亚洲精品久久无码|