使用 Glide 从 URL 加载图像但不带扩展名

我可以使用 Glide 通过以下代码从我的本地 Web 服务器加载图像:

Glide.with(this)
     .load(SERVER_HOST_ADDRESS + userID + ".jpg")
     .into((ImageView) mBinding.getRoot().findViewById(R.id.userImage));

问题是,使用这种方法,我只能访问.jpg扩展程序,有时用户可能选择上传不同类型的图像。有没有办法让 Glide 处理从 URL 加载图像,但没有扩展?构建迭代器会很好,但可能没有必要。


慕桂英546537
浏览 184回答 1
1回答

慕村225694

有没有办法让 Glide 处理从 URL 加载图像,但没有扩展?是的,尽管您的 Web 服务器可能不支持它。我的解释是你想要:.load(SERVER_HOST_ADDRESS + userID)如果您的 Web 服务器在该 URL 提供一个图像,具有有效的图像 MIME 类型,Glide 将处理它。Glide 本身不关心文件扩展名——它需要一个提供有效图像 MIME 类型的有效 URL。但是,我猜您的服务器将针对该 URL 返回 404 错误,因为服务器期望文件扩展名与服务器上的文件相匹配。处理此问题的选项包括:教服务器如何处理无扩展 URL使用一致的图像类型(例如,让服务器将所有内容转换为 JPEG)有一些元数据告诉您要加载什么 URL(例如,用于获取用户详细信息的 Web 服务调用具有提供图像 URL 的 JSON 属性)按照您的建议进行操作,然后遍历各种可能性,看看其中一种是否可行
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java