请求具有齐射的图像时出现意外的响应代码412

时间:2013-09-17 12:24:40

标签: android image networking android-volley

我们目前正试图让凌空运行以将图像加载到NetworkViews中。

这一行请求并加载图像:

holder.image.setImageUrl(image.getUrl(), imageManager.getImageLoader());

在我的同事的设备上,它工作顺利,但在我和第三个测试设备上,我们得到一堆凌空错误,一些图像保持空白(两个设备上的图像不同)。

图像都在同一台服务器上,我们绝对没有理由看到有些图像加载而有些图像不加载,或者为什么它应该依赖设备来加载图像。

09-17 14:15:51.660: E/Volley(19440): [1087] BasicNetwork.performRequest: Unexpected response code 412 for xxxx

那么我们如何解决这个问题以及造成这种行为的原因是什么?

2 个答案:

答案 0 :(得分:1)

要求在rQueue.getCache().clear();之前清除缓存 我看了下Volley提交的数据捕获,如果缓存,那么添加了两个Http头信息If-None-Match & If-Modified-Since,这两个参数更新用于判断是否缓存的信息,如果webserver不支持,则返回错误代码412

答案 1 :(得分:0)

imageLoader.get(image_url, ImageLoader.getImageListener(viewHolder.status_pic, R.drawable.icon_loading, R.drawable.icon_error));

最好在使用齐射获取图像时使用侦听器,但错误412 - 前提条件失败

为什么会发生

服务器不符合请求者提出请求的前提条件之一。即,请求的标头指定了关于不适用于所请求文件的可接受文件的信息。