使用android-async-http下载图片时出现org.apache.http.client.HttpResponseException: Content-Type not allowed的错误

来源:互联网 发布:c语言数据类型怎么用 编辑:程序博客网 时间:2024/05/21 14:54

昨晚使用android-async-http库进行图片下载的时候提示了如上错误,Content-Type不被允许。此时我们可以打印出来http请求的一些信息,看一下所需要的Content-Type的类型。如下,在onFailure方法里面打印日志:

HttpUtils.getInstance().getImgFromUrl(Constant.BeforeSendMsgVerfityImg, new BinaryHttpResponseHandler(allowedContentTypes) {@Overridepublic void onSuccess(int arg0, Header[] arg1, byte[] arg2) {Bitmap bmp = BitmapFactory.decodeByteArray(arg2, 0, arg2.length);ivCodeImg.setImageBitmap(bmp);}@Overridepublic void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {// TODO Auto-generated method stubLog.e("yy:", "onFailure: " + arg3);    for (Header header : arg1){        Log.i("yy", header.getName()+" / "+header.getValue()); //这里是打印的http信息    }}});

日志如下;

红框内即是我们所需要添加的类型,请求图片时作如下处理:

String[] allowedContentTypes = new String[] { "image/jpeg;charset=UTF-8" }; //我这里只限定了一种图片格式
即可正确下载图片。

0 0
原创粉丝点击