訪問騰訊存儲桶中的文件,跨域問題的解決


 

 

 報錯如上圖,場景:前端同事在使用js請求時,引出來的這個問題。

就報錯而言不難解決,在對相應的桶做一個cors配置即可。但問題是依舊是報跨域的錯,配置了跨域頭未生效。

究其原因,大概率是可能在用戶第一次訪問cdn,cdn會檢查數據沒有,回源到源站進行訪問。源站對比將數據經過cdn反饋給客戶端瀏覽器。瀏覽器比對Access-Control-Allow-Origin 后,允許正確,所以跨域正常。 當第二個用戶訪問時,cdn檢測有這個文件,所以會直接給客戶端反饋緩存頁面。由於CDN之所以失敗是因為CDN緩存了OSS未配置cors之前的文件及其頭部,造成客戶端瀏覽器判斷失敗,不允許訪問。所以出現了跨域失敗。

 

解決辦法:

同時也要在存儲桶中配置cdn的跨域相關配置

解決方法二:

如果不對存儲桶做配置,則可以把url里的協議頭 https:// http:// 的改成 //這種自適應的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM