当前位置: 首页 > 知识库问答 >
问题:

无法通过PlaceHolder.com url加载图像

南门洋
2023-03-14

遇到了一个奇怪的问题,试图通过模型内的url从这里下载任何照片->https://jsonplaceholder.typicode.com/photos,例如“https://via.placeholder.com/150/92c952”,但得到错误:

Glide: Load failed for https://via.placeholder.com/600/92c952 with size [788x788]
class com.bumptech.glide.load.engine.GlideException: Failed to load resource
There was 1 cause:
java.io.FileNotFoundException(https://via.placeholder.com/600/92c952)
 call GlideException#logRootCauses(String) for more detail
  Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, REMOTE
There was 1 cause:
java.io.FileNotFoundException(https://via.placeholder.com/600/92c952)
 call GlideException#logRootCauses(String) for more detail
    Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed
There was 1 cause:
java.io.FileNotFoundException(https://via.placeholder.com/600/92c952)
 call GlideException#logRootCauses(String) for more detail
      Cause (1 of 1): class java.io.FileNotFoundException: https://via.placeholder.com/600/92c952

另外,如果我试图从其他链接加载图像,例如->https://avatars.mds.yandex.net/get-pdb/1088712/8b19d278-0b9b-46f8-89e4-66f5541efc55/s1200?webp=false

InputStream inputStream = new URL(urlLik).openStream();
bitmap = BitmapFactory.decodeStream(inputStream);

也没有帮助。
提前感谢,真的在这个问题上堆栈。

使用Glide加载图像的代码:

 RequestOptions requestOptions = RequestOption.placeholderOf(R.drawable.white_background).timeout(15000)
                    .error(R.color.grey);
        Glide.with(application)
                    .setDefaultRequestOptions(requestOptions).load("https://via.placeholder.com/150/92c952")
.placeholder(R.drawable.white_background).dontAnimate().into(image);

共有1个答案

锺离飞尘
2023-03-14

此问题与User-Agent头参数有关。它与Glide无关,而是关于https://via.placeholder.com。您可以通过使用GlideUrl创建URL并添加User-Agent标头来解决此问题。

GlideUrl url = new GlideUrl("https://your-url.com", new LazyHeaders.Builder()
            .addHeader("User-Agent", "your-user-agent")
            .build());
 类似资料:
  • 问题内容: 我正在使用MEDIUMBLOB将图像存储在DB中。当我尝试通过servlet加载图像时,可以看到这些图像。但是,如果图像很大(1 MB或更大),我可以在浏览器中看到一半或3/4的图像。 当我下载相同的图像并将其放在公共Web内容中时,它可以完美运行。任何想法如何克服这个问题?我需要在servlet或MySQL中设置任何变量吗? (由JSF生成的)HTML代码如下: 图像servlet执

  • 问题内容: 我正在创建一个浏览大量图片的应用程序。至此,项目的那部分完成了,它对正确的图片进行了排序,过滤和加载,甚至将它们拆分为单独的页面以加快加载速度。 效果很好,但每页加载25张图片仍需要8秒钟以上。我已经进行了一些研究,得出的结论是,使用异步jQuery Ajax请求是最好的方式,以便尽可能快地同时加载所有请求。 到目前为止,这是我的代码: 此代码的问题在于,除了带有灰色边框的空白方形外,

  • 问题内容: 摘要 我在IE 7,8,9的HTTPS上使用@ font-face遇到了问题-它根本没有加载。不管包含的HTML页面是否托管在HTTPS上都没有关系, 当我尝试通过HTTP加载EOT字体时,它可以工作,而HTTPS则不能 。有人看到过这种行为吗? 托管字体的服务器正在发送正确的content-type =“ application / vnd.ms-fontobject” 我尝试了多种

  • 我第一次尝试使用JavaFx与Maven。通过这个主题:链接IntelliJ不能识别JavaFX 11与OpenJDK 11,我配置的项目。但是无论我做什么,我都不能加载fxml文件,因为"getClass(). getResources(path)"返回null。 我更改了路径,以“/”开头,没有,更改了包,创建了包,删除了包,更改了模块信息中的引用,但这不起作用。 结构:https://ibb

  • 我的Build.Gradle文件 UPD.这个简单的应用程序可以加载图片从互联网,但它不能加载图片从我的服务器。我的服务器的一些图片加载得很好,但其他的不是。我已经迷路了

  • 本文向大家介绍Django1.9 加载通过ImageField上传的图片方法,包括了Django1.9 加载通过ImageField上传的图片方法的使用技巧和注意事项,需要的朋友参考一下 这里假设你是通过models的ImageField上传图片,并期望在前台img标签中能显示。能否访问图片关键在于,是否能通过正确的路径访问。 在models.py中有image如下 在显示页面中如show.htm