我可以使用 Glide 通過以下代碼從我的本地 Web 服務器加載圖像:Glide.with(this)
.load(SERVER_HOST_ADDRESS + userID + ".jpg")
.into((ImageView) mBinding.getRoot().findViewById(R.id.userImage));問題是,使用這種方法,我只能訪問.jpg擴展程序,有時用戶可能選擇上傳不同類型的圖像。有沒有辦法讓 Glide 處理從 URL 加載圖像,但沒有擴展?構(gòu)建迭代器會很好,但可能沒有必要。
1 回答

慕村225694
TA貢獻1880條經(jīng)驗 獲得超4個贊
有沒有辦法讓 Glide 處理從 URL 加載圖像,但沒有擴展?
是的,盡管您的 Web 服務器可能不支持它。
我的解釋是你想要:
.load(SERVER_HOST_ADDRESS + userID)
如果您的 Web 服務器在該 URL 提供一個圖像,具有有效的圖像 MIME 類型,Glide 將處理它。Glide 本身不關心文件擴展名——它需要一個提供有效圖像 MIME 類型的有效 URL。
但是,我猜您的服務器將針對該 URL 返回 404 錯誤,因為服務器期望文件擴展名與服務器上的文件相匹配。
處理此問題的選項包括:
教服務器如何處理無擴展 URL
使用一致的圖像類型(例如,讓服務器將所有內(nèi)容轉(zhuǎn)換為 JPEG)
有一些元數(shù)據(jù)告訴您要加載什么 URL(例如,用于獲取用戶詳細信息的 Web 服務調(diào)用具有提供圖像 URL 的 JSON 屬性)
按照您的建議進行操作,然后遍歷各種可能性,看看其中一種是否可行
添加回答
舉報
0/150
提交
取消