在vue中使用iframe解決視頻資源的防盜鏈
我們的vue2.0項(xiàng)目當(dāng)中,存儲(chǔ)了許多圖片和視頻資源,所以在index.html中增加了防盜鏈設(shè)置
但是這樣一來,當(dāng)我們將其他網(wǎng)站上的視頻資源,想入到我們的環(huán)境當(dāng)中的時(shí)候,由于其他網(wǎng)站的防盜鏈設(shè)置,將url地址放到瀏覽器當(dāng)中能夠播放,但是放到我們頁面中訪問的時(shí)候,會(huì)報(bào)錯(cuò)403,找不到資源數(shù)據(jù)
但是不能修改index.html中的防盜鏈設(shè)置,因?yàn)檫@是全局配置,而我只要某一個(gè)功能模塊不需要這個(gè)防盜鏈設(shè)置,因此使用ifame來解決,因?yàn)樗梢詥为?dú)設(shè)置 <meta name=referrer content=no-referrer>
在static中文件夾中增加一個(gè)html文件夾,寫我的目標(biāo)dom結(jié)構(gòu),不放在靜態(tài)文件夾中,打包之后發(fā)布到線上會(huì)找不到這個(gè)html,除非寫了特定的打包配置,輸出目標(biāo)位置
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> //這里設(shè)置防盜鏈 <meta name=referrer content=no-referrer> <title>Document</title> <style> *{ margin:0; padding:0; } body { overflow: hidden; } video { width: 100%; height: 100%; } </style> </head> <body> <video id="my-iframe-video" controls preload="auto"></video> </body> </html>
使用iframe
<!-- 報(bào)錯(cuò)403 --> <iframe :src="iframeSrc" frameborder="0" style="width:100%;height:100%" class="err-video-box"> </iframe> <!-- 正常播放 --> <video v-show="previewFlag" ref="videoEle" :src="vodList[vodIndex]" controls preload="auto" referrerPolicy="no-referrer" id="target-video"></video>
在視頻資源錯(cuò)誤事件里去替換頁面結(jié)構(gòu)
this.$refs.videoEle.addEventListener('error', (e) => { this.previewFlag = false this.iframeSrc = window.location.pathname.replace(/\/$/,'')+'/static/html/videoSucai.html' // 設(shè)置iframe可見 const iframeDom = document.querySelector('.err-video-box') iframeDom.style.setProperty('display','block') // 向iframe中進(jìn)行通信,傳遞播放的src地址 this.$nextTick(()=>{ setTimeout(() => { const videoErr = document.querySelector('.err-video-box').contentWindow.document.querySelector('#my-iframe-video') videoErr.src = e.target.src },500); }) })
到此這篇關(guān)于在vue中使用iframe解決視頻資源的防盜鏈的文章就介紹到這了,更多相關(guān)vue iframe資源防盜鏈內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
element-plus/element-ui走馬燈配置圖片及圖片自適應(yīng)的最簡(jiǎn)便方法
走馬燈功能在展示圖片時(shí)經(jīng)常用到,下面這篇文章主要給大家介紹了關(guān)于element-plus/element-ui走馬燈配置圖片及圖片自適應(yīng)的最簡(jiǎn)便方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03在vue項(xiàng)目中配置你自己的啟動(dòng)命令和打包命令方式
這篇文章主要介紹了在vue項(xiàng)目中配置你自己的啟動(dòng)命令和打包命令方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04Electron采集桌面共享和系統(tǒng)音頻(桌面捕獲)實(shí)例
這篇文章主要為大家介紹了Electron采集桌面共享和系統(tǒng)音頻(桌面捕獲)實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10移動(dòng)端Vue2.x Picker的全局調(diào)用實(shí)現(xiàn)
這篇文章主要介紹了移動(dòng)端Vue2.x Picker的全局調(diào)用實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03