gpt4 book ai didi

android - Retrofit - 如何将 Response 转换为 HashMap?

转载 作者:太空宇宙 更新时间:2023-11-03 10:19:37 24 4
gpt4 key购买 nike

我对使用 Square 的 Retrofit 进行 Android 开发有疑问。假设我有一个 Response 对象,它实际上是一个 HashMap<String, String>对象。

有没有办法得到 HashMap来自这个 Retrofit 对象的对象?

谢谢!

最佳答案

Response对象包含有关从服务器返回的响应的各种信息。

如果你的意思是响应体是HashMap您可以在 success() 时解析正文被调用,或在构建 RestAdapter 时注册类型适配器并编写将解析和填充 HashMap 的反序列化程序.

 private RestAdapter getRestAdapter(){
GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.registerTypeAdapter(new TypeToken<HashMap<String, String>>(){}.getType(), new MyHashMapDeserializer());
RestAdapter.Builder builder = new RestAdapter.Builder();
builder.setClient(new OkClient());
builder.setLogLevel(RestAdapter.LogLevel.FULL);
builder.setExecutors(Executors.newCachedThreadPool(), new MainThreadExecutor());
builder.setConverter(new GsonConverter(gsonBuilder.create()));
builder.setEndpoint(API_END_POINT_URL);
return builder.build();
}

然后创建将implements JsonDeserializer<HashMap<String, String>> 的新类(或内部类)并实现您的反序列化逻辑。

确保你适应K,V类型满足您的需求。

关于android - Retrofit - 如何将 Response 转换为 HashMap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26351609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com