在 android 应用程序中改造响应主体未正确解析

Retrofit response body not parsing properly in android app

我正在邮递员中收到此回复 在 Android 中,我的 response.body() 不为空,但仍然没有图像显示在图像视图中。

if (response.isSuccessful()) {
    if (response.body()!=null) { 
        Glide.with(getApplicationContext()).load(response.body()).into(iv_userimage_header);
        Toast.makeText(SubtitutesDashboard.this, "Image Set", Toast.LENGTH_SHORT).show();
    }
} 

这是邮递员的回复

试试这个,确保你使用 okhttp3.ResponseBody 获得响应的回调。所以像

...
call.enqueue(new Callback<ResponseBody>() {
        @Override
        public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) { 
...

然后使用

将图像作为位图获取
Bitmap bitmap = BitmapFactory.decodeStream(response.body().byteStream());

你可以直接给你设置这个位图ImageView

iv_userimage_header.setImageBitmap(bitmap);

或将 Glide 与 .asBitmap

一起使用

有关详细信息,请参阅 this SO post