淘淘商城學習筆記 之 上傳圖片到遠程服務器,圖片的回顯出現的bug


由於非科班自學轉行,看了好多視頻,工作之余正在學習黑馬的淘淘商城,感覺受益良多,遇到一個比較奇怪的bug調了好久,遂心樂之分享於諸君

bug情況是這樣的:在商城的后台上傳圖片之后圖片回顯不出來,右鍵查看鏈接,發現鏈接被加了localhost://8080 

原來正常的鏈接是這樣的:

ftp://ftpuser@192.168.25.133/home/ftpuser/www/images/2017/08/11/1502405214622039.png 

或縮寫去掉寫為(我復制的鏈接用的這個):

192.168.25.133/home/ftpuser/www/images/2017/08/11/1502405214622039.png 

錯誤的鏈接為:

http://localhost:8080/192.168.25.133/home/ftpuser/www/images/2017/08/11/1502405214622039.png 

聰明的你可能此時就已經想通了問題出在哪里了吧!先別笑,這個問題我百度了好久都沒找到答案!

錯誤演示

 

 

 

此時使用filezilla查看發現圖片已經上傳到ftp服務器里了,很奇怪為什么圖片沒有回顯呢?右鍵那張奇怪的圖片,復制鏈接用空白頁打開顯示404,

注意到鏈接中多加了localhost:8080/ ,去掉這個多余的也能訪問,這是為啥呢?

其實原因很簡單:

這個生成的鏈接是圖片上傳到服務器后返回的圖片url(這不是廢話),因為之前要登錄ftp服務器,所以在配置文件中沒有寫http://作為url,而且一般使用hostIp的地方都是不能寫http://的,寫了會報錯的,所以 就沒有寫,但是我需要返回一個json數據,url也就直接寫在里邊了,也沒多注意,數據格式如下:

{"error":0,"url":"192.168.25.133/images/2017/08/11/1502431975821476.png"}

由於現在的瀏覽器功能越來越強大了,不寫http://也能訪問,所以讓我糾結了一天,返回json之前定義一個字符串加上http://,問題就解決了。

正確的json返回url:

{"error":0,"url":"http://192.168.25.133/images/2017/08/11/1502431975821476.png"}

 

==================分割線================

好多同學知道是這個問題了,但是找起來還是找不到,提示一下,在拼接圖片url的controller中,只需要找到那個圖片的url,然后前邊加上“http://”+

豆芽菜長房高,他也是個菜。                          ------------馬士兵馬老師


免責聲明!

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



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