首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓改造预期的BEGIN_ARRAY

安卓改造预期的BEGIN_ARRAY
EN

Stack Overflow用户
提问于 2018-09-21 22:20:56
回答 2查看 96关注 0票数 0

我对改造有意见。

CryptoCompareClient.java

代码语言:javascript
复制
public interface CryptoCompareClient {
@GET("/data/pricemulti")
Call<List<CryptoPrices>> multiCryptoPrices(@Query("fsyms") String crypto,
                                   @Query("tsyms") String currency);

@GET("/data/price")
Call<CryptoPrices> singleCryptoPrice(@Query("fsym") String crypto,
                                     @Query("tsyms") String currency);
}

响应JSON: (https://min-api.cryptocompare.com/data/pricemulti?fsyms=BTC,ETH,LSK&tsyms=USD,EUR,PLN)

{“美元”:6731.55,“欧元”:5716.11,“欧元”:24359.79},“欧元”:244.41,“欧元”:207.73,“欧元”:905.73},“欧元”:{“美元”:3.42,“欧元”:2.91,“欧元”:12.49}}

RetrofitInterface.java

代码语言:javascript
复制
public class RetrofitInterface {
Retrofit retrofit = RetrofitClientInstance.getRetrofitInstance();
private static final String CURRENCY="USD,EUR,PLN,BTC";
public void multiCrypto(String names){
    CryptoCompareClient client=retrofit.create(CryptoCompareClient.class);
    Call<List<CryptoPrices>> call=client.multiCryptoPrices(names,CURRENCY);
    call.enqueue(new Callback<List<CryptoPrices>>() {
        @Override
        public void onResponse(Call<List<CryptoPrices>> call, Response<List<CryptoPrices>> response) {

        }

        @Override
        public void onFailure(Call<List<CryptoPrices>> call, Throwable t) {
            Log.d("MyCrypto", "fail retrof "+t);
        }
    });
}

}

Logcat

D/MyCrypto: fail java.lang.IllegalStateException:预期BEGIN_ARRAY,但在第1列2 path $上是BEGIN_OBJECT

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-21 22:54:18

Call<List<CryptoPrices>>更改为Call<Map<String,CryptoPrices>>。响应不是列表,而是指向数据的字符串映射(如”BTC”)。

票数 2
EN

Stack Overflow用户

发布于 2018-09-21 22:53:23

您的API方法:

代码语言:javascript
复制
@GET("/data/pricemulti")
Call<List<CryptoPrices>> multiCryptoPrices(@Query("fsyms") String crypto,
                               @Query("tsyms") String currency);

期望CryptoPrices的列表为数组[...],并且您正在提供一个对象{...}

祝你的密码客户好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52451662

复制
相关文章

相似问题

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