我知道,默认情况下,改造创建的可观察对象是“冷”可观察对象。我对我的服务器端点有这个特定的调用@POST("oauth/token")ObservablesignIn(@Field("username")Stringusername,@Field("password")Stringpassword);当我这样做时:publicclassLoginUseCaseextendsSubscriber{publicvoidlogIn(Stringusername,Stringpassword){Subscriptionsubscription=myApi.signIn(username,pas
当使用Realm和Retrofit2将自动管理的RealmObject发送到我们的服务器时,Retrofit2(使用Gson)仅发送RealmObject中的整数。它完全忽略了Strings等字段,并没有把这些放在json中。没有错误记录。但是,如果我断开RealmObject与Realm的连接:realm.copyFromRealm(myRealmObject)然后它会发送所有字段。可能是什么问题呢?有没有合适的解决方案? 最佳答案 开始之前在我在Stackoverflow上的一篇帖子中,我已经解释了同时使用Gson和Realm时
我必须使用一个使用JSend的API格式。长话短说,它使用HTTP状态代码来指示如下状态:200是成功406未授权这很好,因为我可以由此确定我的API请求是否成功。但是:由于JSend格式有它自己的东西,它在响应时也有一个小的状态指示器,就像这样:{status:"success",data:{"post":{"id":2,"title":"Anotherblogpost","body":"Morecontent"}}}所以它有一个“状态”字段,它还显示API请求是否成功。问题:改造以解析对POJO的响应,因此它假定响应仅包含模型而没有成功指标,例如:(后模型实例){"id":2,"t
我在我的Android应用程序中使用Retrofit与REST-API进行通信。当用户在我的应用程序中更改他的个人资料图片时,我需要发送请求并上传新图片。这是我的服务:@Multipart@PATCH("/api/users/{username}/")CallchangeUserPhoto(@Header("Authorization")Stringtoken,@Path("username")StringuserName,@Part("photo")RequestBodyphoto);这是我发送请求的代码:Retrofitretrofit=newRetrofit.Builder().
我正在使用Retrofit和SimpleXML来解析来自某些公共(public)API的XML响应。我对所有内容都做得很好,直到我偶然发现包含自由文本和子标签的XML标签-如以下示例所示:Somefree-styletextEvenmoretext!为了尝试使用Simple-XML注释进行反序列化,我采用了两种方法。请记住,'a'基本上是一个列表条目标签:第一个:@ElementList(entry="a",inline=true,required=false)ListaList;像这样定义“A”:publicstaticclassA{@Text(required=false)prot
我尝试结合使用KotlinRxJava和retrofit2。@GET("/xxxxxxxxxxxx/{id}.json")fungetHotel(@Part("id")id:String):Observable>当我尝试调用此方法(getHotels())时:varsubscription=HotelsFactory.getHotelService((activity.applicationContextasApp).client).getHotel(arguments.getInt("id").toString()).subscribeOn(Schedulers.computatio
我是android和xmpp的初学者,我正在开发一个使用xmpp作为协议(protocol)并使用openfire作为服务器的聊天应用程序。我正在使用xmpprestapi创建一个组。要创建一个组,我需要向服务器发送GET请求带有xml数据主体。我在android客户端中使用retrofit2。每当我构建我的应用程序时,它都会给我这个错误错误:Error:warning:IgnoringInnerClassesattributeforananonymousinnerclassError:(com.bea.xml.stream.util.CircularQueue$1)thatdoesn
我正在阅读有关Retrofit1和2的帖子和文档。我有下一个源代码来从用户那里获取repo协议(protocol)。@GET("users/{user}/repos")Call>getRepos(@Path("user")Stringuser);在retrofit2中我看到现在我们需要将@Path换成@Query,但我不知道使用方法是否相同。就像下一个一样,还是我需要更改更多内容?@GET("users/{user}/repos")Call>getRepos(@Query("user")Stringuser);谢谢 最佳答案 两者不
好吧,我一直在努力使用RESTAPI响应来处理Firebase响应。问题是我不想为Firebase使用Android的库,而是使用原始的restapi。长话短说,Firebase的响应是:{"object1":{"param1":true,"param2":"05","param3":"String",},"object2":{"param1":true,"param2":"09","param3":"String",}}retrofit界面:publicinterfaceApiCalls{@GET("/objects.json")Observable>getObjects();}Gs
我对翻新很陌生。我正在使用retrofit2进行API集成。我有一个用于POST方法的API。我从postman那里发送正文,我得到了回应,但是当我以编程方式执行此操作时,我收到“内部服务器错误”。这是我的postman回复我的代码是privatevoidsavePost(Stringpost_body,Stringpermission,Stringlatitude,Stringlongitude,Stringlocation){try{Retrofitretrofit=newRetrofit.Builder().baseUrl(BuildConfig.BASE_URL).addCon