草庐IT

Retrofit

全部标签

java - Retrofit 2.0怎么删除?

我正在使用retrofit2.0,我正在我的Android应用程序中实现删除功能,但是,我无法成功,有人可以给我建议吗?我都试过了:@DELETE("books/{id}")voiddeleteBook(@Path("id")intitemId);@DELETE("books/{id}")voiddeleteBook(@Path("id")intbookId,Callbackcallback);我收到错误java.lang.IllegalArgumentException:服务方法无法返回void。对于方法LibraryService.deleteBook。我也试了一下:Respons

java - 如何通过 Retrofit 将 Map<String, String> 参数或对象传递给 POST 请求?

我在将Map参数或对象传递给RetrofitPOST请求时遇到问题。我关注square,kdubblabs教程和thisthread我想不通。我当前有效的代码:publicinterfaceFacebookUser{@FormUrlEncoded@POST("/user/login-facebook")voidlogin(@Field("fb_access_token")StringfbAccessToken,@Field("os")Stringos,@Field("device")Stringdevice,@Field("os_version")StringosVersion,@Fi

java - RxAndroid 和 Retrofit : Unable to create call adapter for io. reactivex.Observable<retrofit2.Response<okhttp3.ResponseBody>>

我正在尝试使用rxJava、rxAndroid、Retrofit2和OkHTTP3从URL端点下载文件。我的代码无法为“Observable>”创建调用适配器。这些方法对我来说是新的,所以我相信我在这里遗漏了一个重要的概念。非常感谢任何方向或观点。FATALEXCEPTION:mainProcess:com.example.khe11e.rxdownloadfile,PID:14130java.lang.IllegalArgumentException:Unabletocreatecalladapterforio.reactivex.Observable>formethodRetrof

android - 使用参数进行改造和 GET

我正在尝试使用Retrofit向GoogleGeoCodeAPI发送请求。服务接口(interface)如下所示:publicinterfaceFooService{@GET("/maps/api/geocode/json?address={zipcode}&sensor=false")voidgetPositionByZip(@Path("zipcode")intzipcode,Callbackcb);}当我调用服务时:OkHttpClientokHttpClient=newOkHttpClient();RestAdapterrestAdapter=newRestAdapter.Bu

android - 使用参数进行改造和 GET

我正在尝试使用Retrofit向GoogleGeoCodeAPI发送请求。服务接口(interface)如下所示:publicinterfaceFooService{@GET("/maps/api/geocode/json?address={zipcode}&sensor=false")voidgetPositionByZip(@Path("zipcode")intzipcode,Callbackcb);}当我调用服务时:OkHttpClientokHttpClient=newOkHttpClient();RestAdapterrestAdapter=newRestAdapter.Bu

java - Retrofit:如何发送带有常量字段的 POST 请求?

我想发送一个带有一个实际参数的简单POST请求:@POST("/token")@FormUrlEncodedvoidextendSession(@Field("refresh_token")finalStringrefreshToken);但这个请求还应该发送服务器请求的一些常量值,例如client_id、client_secret和grant_type,这些都是常量,不应该成为应用程序API的一部分。执行此操作的最佳方法是什么? 最佳答案 这取决于您的方法。如果您有常量,则可以构建调用所需值的默认映射。@FieldMap将适合构建

java - Retrofit 和 Jackson 以及解析 JSON

我正在使用Jackson的Retrofit。由于某些原因,我无法解析以下JSON:[{"ProfileImage":null,"UserName":"joe"},{"ProfileImage":"http://www.example.com/profiles/fileName1.jpg","UserName":"jane"},{"ProfileImage":null,"UserName":"john"}]我得到这个异常:Exceptioninthread"main"retrofit.RetrofitError:java.lang.ClassCastException:sun.refle

java - Retrofit2 状态码为 200 但 json 结构不同于数据模型类时的处理条件

我正在使用Retrofit2和RxJava2CallAdapterFactory。我使用的API始终返回200状态代码,对于成功和响应JSON字符串,JSON结构完全不同。由于状态代码始终为200,因此始终调用onResponse()方法。因此,我无法在错误情况下从JSON中提取错误消息。解决方案一:我使用ScalarsConverterFactory获取响应字符串并手动使用Gson来解析响应。HowtogetresponseasStringusingretrofitwithoutusingGSONoranyotherlibraryinandroid此解决方案的问题:我计划使用RxJa

java - 如何使用 Retrofit 2.0 和新的 MockRetrofit 类模拟服务?

我们使用Retrofit1来模拟Web服务并模拟网络延迟,如下所示:MockRestAdaptermockRestAdapter=MockRestAdapter.from(restAdapter);returnmockRestAdapter.create(MyService.class,newMyServiceMock());其中MyService是服务接口(interface)(返回响应作为RxObservables),MyServiceMock是实现此接口(interface)的类。在Retrofit2.0.0-beta3中,有一个全新的模拟系统(请参阅:https://githu

java - 带有 Retrofit 2 的多个转换器

我有一个HATEOAS(HAL)REST服务并设法使用下面的代码与其通信(使用halarious作为转换引擎)但是当我尝试mergetheconverters时(stallone和stallone2),应用程序将始终选择第一个转换器,而不是适合响应类型的转换器,这当然会导致错误。我如何避免仅在小类型细节上有所不同的重复改造?publicinterfaceStallone{@GET("/discovery")Calldiscover();@POST()Calllogin(@UrlStringurl,@BodyLoginRequestsecret);}publicstaticvoidmai