我将Retrofit库用于我的REST调用。我所做的大部分工作都很顺利,但由于某种原因,我在将JSON时间戳字符串转换为java.util.Date对象时遇到了问题。进来的JSON看起来像这样。{"date":"2013-07-16","created_at":"2013-07-16T22:52:36Z",}如何告诉Retrofit或Gson将这些字符串转换为java.util.Date对象? 最佳答案 Gsongson=newGsonBuilder().setDateFormat("yyyy-MM-dd'T'HH:mm:ss").
我将Retrofit库用于我的REST调用。我所做的大部分工作都很顺利,但由于某种原因,我在将JSON时间戳字符串转换为java.util.Date对象时遇到了问题。进来的JSON看起来像这样。{"date":"2013-07-16","created_at":"2013-07-16T22:52:36Z",}如何告诉Retrofit或Gson将这些字符串转换为java.util.Date对象? 最佳答案 Gsongson=newGsonBuilder().setDateFormat("yyyy-MM-dd'T'HH:mm:ss").
我正在使用OAuth,每次发出请求时都需要将OAuthtoken放入我的header中。我看到了@Header注释,但是有没有办法让它参数化,以便我可以在运行时传入?这是概念@Header({Authorization:'OAuth{var}',api_version={var}})你能在运行时传递它们吗?@GET("/users")voidgetUsers(@Header("Authorization")Stringauth,@Header("X-Api-Version")Stringversion,Callbackcallback) 最佳答案
我正在使用OAuth,每次发出请求时都需要将OAuthtoken放入我的header中。我看到了@Header注释,但是有没有办法让它参数化,以便我可以在运行时传入?这是概念@Header({Authorization:'OAuth{var}',api_version={var}})你能在运行时传递它们吗?@GET("/users")voidgetUsers(@Header("Authorization")Stringauth,@Header("X-Api-Version")Stringversion,Callbackcallback) 最佳答案
我正在使用Retrofit2.0.0-beta1。在测试中,我有一个替代方案,预计会出现HTTP400错误我想要retrofit.Responseresponse但是response.body()==nullMyError没有反序列化-我只在这里看到它response.errorBody().string()但它没有给我MyError作为对象 最佳答案 我目前使用一个非常简单的实现,它不需要使用转换器或特殊类。我使用的代码如下:publicvoidonResponse(Callcall,Responseresponse){Dialo
我正在使用Retrofit2.0.0-beta1。在测试中,我有一个替代方案,预计会出现HTTP400错误我想要retrofit.Responseresponse但是response.body()==nullMyError没有反序列化-我只在这里看到它response.errorBody().string()但它没有给我MyError作为对象 最佳答案 我目前使用一个非常简单的实现,它不需要使用转换器或特殊类。我使用的代码如下:publicvoidonResponse(Callcall,Responseresponse){Dialo
Retrofit2'sdocumentation说:HeadersthatneedtobeaddedtoeveryrequestcanbespecifiedusinganOkHttpinterceptor.使用以前的版本可以轻松完成,here's相关的QA。但是使用改造2,我找不到类似setRequestInterceptor或setInterceptor方法可以应用于Retrofit.Builder对象。另外,OkHttp中似乎没有RequestInterceptor了。Retrofit的文档将我们推荐给Interceptor我不太明白如何将它用于此目的。我该怎么做?
Retrofit2'sdocumentation说:HeadersthatneedtobeaddedtoeveryrequestcanbespecifiedusinganOkHttpinterceptor.使用以前的版本可以轻松完成,here's相关的QA。但是使用改造2,我找不到类似setRequestInterceptor或setInterceptor方法可以应用于Retrofit.Builder对象。另外,OkHttp中似乎没有RequestInterceptor了。Retrofit的文档将我们推荐给Interceptor我不太明白如何将它用于此目的。我该怎么做?
我正在尝试使用Retrofit和OKHttp来缓存HTTP响应。我关注了thisgist最后得到以下代码:FilehttpCacheDirectory=newFile(context.getCacheDir(),"responses");HttpResponseCachehttpResponseCache=null;try{httpResponseCache=newHttpResponseCache(httpCacheDirectory,10*1024*1024);}catch(IOExceptione){Log.e("Retrofit","Couldnotcreatehttpcach
我正在尝试使用Retrofit和OKHttp来缓存HTTP响应。我关注了thisgist最后得到以下代码:FilehttpCacheDirectory=newFile(context.getCacheDir(),"responses");HttpResponseCachehttpResponseCache=null;try{httpResponseCache=newHttpResponseCache(httpCacheDirectory,10*1024*1024);}catch(IOExceptione){Log.e("Retrofit","Couldnotcreatehttpcach