圖片上傳顯示不了Mixed Content: The page at ‘https://XXX’ was loaded over HTTPS was loaded over HTTPS, but...

附件上傳圖片無法展示

Mixed Content: The page at ‘https://XXX’ was loaded over HTTPS was loaded over HTTPS, but requested an insecure image 'cdvfile://localhost/cache/***.jpg'. This request has been blocked; the content must be served over HTTPS.

本項目前端是用vue,后端 是tomcat+nginx實現(xiàn)的,在使用tomcat+nginx時。Nginx使用https,tomcat使用http。使用iframe之類框架,在重定向時會出現(xiàn)以上問題導致頁面加載不出來。這是因為Tomcat不能知道Nginx發(fā)來的是http還是https。

如圖所示圖片上傳后無法顯示,有試過后端服務器修改


該配置項目在CSDN上找到的

鏈接為:?https://blog.csdn.net/qq_27114677/article/details/77848078? (但是我這邊按照這個修改并沒有效果。)

于是繼續(xù)尋找解決方案,查找了各種資料,最終找到2種方案。

1、將圖片上傳到https的文件服務器上,然后再將返回的https圖片路徑拿來做展示,可以解決圖片顯示不了的問題。缺點是效率有點低,一次每次修改圖片都得上傳到服務器然后再去刪除,如果操作失誤過多,會導致服務器垃圾文件越來越多。

2、第二種方案就是將圖片從相機或者相冊取出來后轉換成base64格式重新定義一個數(shù)組保存起來用來做展示(親測有效),另外的一個上傳用的文件流依舊用于上傳。這樣方便在本地做刪除,變換圖片等操作 。而不會影響到服務器,最終確定后再進行批量上傳。具體實現(xiàn)代碼:


?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容