如果服务器没有返回图像,我想发送imgData为null。但是使用此代码它永远不会返回null.I需要检查HttpResponse是否包含null或image或者当我从服务器发送响应时出现错误消息。如果图像存在,它将以字节数组的形式发送(如果不存在),则返回null,如果发生错误,则发送错误消息。检查HttpResponse中是否有字符串或空值或图像
public static byte[] getCommentImage(final int commentId) {
byte[] imgData = null;
HttpResponse res= null;
try {
res = $.get(COMMENT_IMAGE_URL, new Object[] {"comment_id", commentId });
HttpEntity resEntity = res.getEntity();
imgData = EntityUtils.toByteArray(resEntity);
Log.d("getCommentImage API",imgData+" ");
} catch (Exception e) {
e.printStackTrace();
}
return imgData;
}
你有控制服务器吗? HttpResponse包含null是什么意思? – lelloman
如果图像不存在数据库我发送数据为空 – abc
如果你有控制权的服务器,你可以任意决定,响应正文的第一个字节是类型,所以也许0x00为null,0xaa为错误和0xff的图像,然后根据类型读取其他字节 – lelloman