草庐IT

RetroFit

全部标签

android - 改造 400 错误请求

这是我用于网络调用的函数。privatevoidgetSample(){Log.d("","getSample:");OkHttpClientclient=newOkHttpClient();HttpLoggingInterceptorinterceptor=newHttpLoggingInterceptor();interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);client.interceptors().add(interceptor);Retrofitretrofit=newRetrofit.Builder().base

java - Retrofit 2 API 我可以使用本地文件路径或 json 字符串而不是 url 吗?

你好,我正在开发一个Android应用程序,它使用retrofitAPI从服务器获取响应。Retrofit自动解析json响应并创建POJO类的对象。我将该json存储到sqlite中,如果未连接互联网,则从sqllite调用json,遇到困难必须手动解析json。有什么方法可以使用改造库来解析json并从json字符串或文件路径生成pojo?我的代码在这里是从url中获取:@FormUrlEncoded@POST("getResponse")ObservablegetResponse(@Field("token")Stringtoken);如果没有连接互联网,我想要这样的东西。@Fr

android - 使用 Retrofit 在 URL 中获取带有 `&` 附加参数的请求

如何在Android中使用Retrofit在带有&附加参数的URL中发出HTTPGET请求?网址:http://api.com?name=remote&class=TV目前,我正在使用:@GET("http://api.com?name={name}&class={class}")Callget(@Path(value="name",encoded=false)Stringname,@Path(value="class",encoded=false)Stringclass);我收到以下错误:java.lang.IllegalArgumentException:URLquerystrin

android - 多个@Body 字段出错 - retrofit2 beta3

我刚开始为android进行改造。当我尝试为发布请求的正文指定2个字段时出现错误:找到多个@Body方法注解。方法的(参数#2)调用在我的API接口(interface)文件中定义为:@POST("auth/login")Calllogin(@BodyStringusername,@BodyStringpassword);然后我创建调用:Retrofitretrofit=newRetrofit.Builder().baseUrl(baseURL).addConverterFactory(GsonConverterFactory.create()).build();APIServices

android - Retrofit + RealmList + Gson 陷入循环直到内存不足

我正在尝试使用Retrofit+Realm+Gson,但是当使用RealmList时,应用程序卡住了。如果我删除RealmList对象一切正常,但我需要对象列表。日志:(32099):BackgroundstickyconcurrentmarksweepGCfreed278516(15MB)AllocSpaceobjects,0(0B)LOSobjects,25%free,23MB/31MB,paused2.533mstotal1.049s(32099):BackgroundpartialconcurrentmarksweepGCfreed137132(8MB)AllocSpaceob

android - 改造 - 在将其解析为 json 之前从响应主体中删除一些无效字符

我有一个外部Web服务,它在响应正文中返回json但嵌套在括号中,如下所示:({"door_x":"103994.001461","door_y":"98780.7862376","distance":"53.3"})使用这段代码:classAddressInfo{Stringdoor_x;Stringdoor_y;}interfaceAddressWebService{@GET("/reversegeocoding")AddressInforeverseGeocoding(@Query("x")doublex,@Query("y")doubley);}显然失败了。这是堆栈跟踪:ret

android - 如何获取原始 Retrofit 响应字符串?

我正在研究Retrofit,但我被困在一件事上:如何在响应正文中获取原始JSON。publicinterfaceViewMenuItems{@GETCalllistRepos(@UrlStringurl);}ViewMenuItemsviewMenuItems=ApiClient.getClient().create(ViewMenuItems.class);CallresponseBodyCall=viewMenuItems.listRepos(Webservices.MERCHANT+merchantId+Webservices.MENU_ITEMS_LASTMODIFIED);r

android - 如何测试使用 Retrofit 和 Dagger2 的 REST API

我想创建一个单元测试来验证API是否成功获取了repo列表。我希望测试实际上建立网络连接而不是使用模拟服务器。此外,最好使用RoboElectric,这样测试就可以在JVM上运行。这是为了测试MVP架构中的模型。我正在使用Mosby的示例项目,它使用Dagger2和Retrofit1.9。publicinterfaceGithubApi{@GET("/repositories")@Headers("Cache-Control:no-cache")publicvoidgetRepos(Callback>callback);}这是模块:@Module()publicclassSampleM

android - 改造 - A/libc : Fatal signal 11 (SIGSEGV), 代码 1

我收到A/libc:致命信号11(SIGSEGV),当使用改造类生成我的服务接口(interface)的实现时代码1。我认为这是由于native库中的空指针段错误造成的。什么都没有抛出,所以我无法追踪它。最奇怪的是,它不会发生在我的任何模拟器或物理设备(所有6.0)上,除了我的HTC恰好是6.0.1。这是我的界面:publicinterfaceRestApiPerson{@GET(QUERY_PERSON)CallgetPersonSearchResult(@Query("query")Stringq);}这里是实现。崩溃发生在(Callcall=restApi.getPersonSe

android - 使用改造 android 调用 WSDL Web 服务

我正在尝试在我的应用程序中使用改造来调用WSDL网络服务像这样publicstaticStringcallWebservice(Stringusername,Stringpassword){StringsoapMessage=""+""+""+""+""+username+""+""+Helper.md5(password).toUpperCase(Locale.getDefault())+""+""+""+"";RequestInterceptorrequestInterceptor=newRequestInterceptor(){@Overridepublicvoidinterce