首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >翻新返回空数据

翻新返回空数据
EN

Stack Overflow用户
提问于 2020-07-22 03:40:08
回答 1查看 33关注 0票数 0

我有一个问题--我不知道为什么body返回null,这是我的模型。

代码语言:javascript
复制
package com.example.currencyapp.model;

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

import java.io.Serializable;

public class Rates implements Serializable {

    @SerializedName("CAD")
    @Expose
    private String cad;

    public Rates(String cad) {
        this.cad = cad;
        
    }

    public Rates() {
    }

    public String getCad() {
        return cad;
    }

   
}

这是我的json

代码语言:javascript
复制
    {
        "rates": {
            "CAD": 1.5399,
           }
    }

这是我的服务

代码语言:javascript
复制
    import com.example.currencyapp.model.Rates;
    
    import retrofit2.Call;
    import retrofit2.http.GET;
    import retrofit2.http.Query;
    
    public interface GetCurrencyDataService {
        @GET("/latest")
        Call<Rates> getCurrencyData();
    } 

和我的翻新实例

代码语言:javascript
复制
    import retrofit2.Retrofit;
    import retrofit2.converter.gson.GsonConverterFactory;
    
    public class RetrofitInstance {
        private static Retrofit retrofit;
        private static final String BASE_URL = "https://api.exchangeratesapi.io";
    
        public static Retrofit getRetrofitInstance() {
            if (retrofit == null) {
                retrofit = new retrofit2.Retrofit.Builder()
                        .baseUrl(BASE_URL)
                        .addConverterFactory(GsonConverterFactory.create())
                        .build();
            }
            return retrofit;
        }
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-22 03:52:50

你展示的JSON对象期望你的模型是:

代码语言:javascript
复制
public class CadObject implements Serializable {
    @SerializedName("rates")
    @Expose
    private Rates rates;

    ...

    class Rates implements Serializable {

        @SerializedName("CAD")
        @Expose
        private String cad;

        ...
    }
}

这样做的原因是您有一个JSON对象,其中包含一个JSON对象,而JSON对象包含一个字符串值。

如果你想让你当前的模型工作,JSON对象结构应该是这样的:

代码语言:javascript
复制
{
    "CAD": 1.5399
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63021929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档