问题标签 [retrofit2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
24261 浏览

java - java.lang.NumberFormatException:应为 int,但在第 1 行第 8454 列为 0.6

我在演示项目中使用改造库进行调用。

我收到以下错误:

java.lang.NumberFormatException:应为 int,但在第 1 行第 8454 列路径 $.result.results.ads[2].acres 为 0.6

我理解这取决于 GSON。

我将向您展示它陷入的 JSON:

我对改造不是很有经验,所以决定学习和整合这个项目。

有人有什么建议吗?

我无法控制向下发送的 JSON。

0 投票
0 回答
33 浏览

android - 使用 gson 转换原始类型的 json 数组

我正在使用 Retrofit 2,我有一个方法,它的响应是一个数字数组

为了解析响应,我必须在 Call< > 中包含什么类型?

0 投票
3 回答
15814 浏览

android - java.lang.IllegalArgumentException:带有改造的非法 URL

我正在尝试在我的应用程序中调用 api 我有以下 url 模板

test-test.domainname.com/feeds/json/v3/attribute/attribute

我正在使用改造 2,但出现以下致命异常

非法网址:test-test.domainname.com

这是我的界面

有人可以帮我解决这个问题...

0 投票
1 回答
798 浏览

android - 无法使用改造 okHttp 向服务器请求 Facebook 注册

我现在正在使用改造、OkHttp 和 facebook sdk 进行 facebook 注册。但是我的注册方法有问题“Fail:: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $”。你能看看请在那?这是我的代码。这是 facebook reigter 事件。

这是我的注册方法。

这是我的api类

这是我的服务接口

0 投票
2 回答
208 浏览

android - 在 Retrofit 中解析 JSON 响应

尝试使用 Retrofit 解析 JSON 响应时出现以下错误: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path $

这是 JSON 响应的样子:

这是我的经销商课程:

这是改造电话:

关于我做错了什么的任何想法?

0 投票
2 回答
3489 浏览

android - Retrofit2 204 No Content 有内容异常

我从服务器空 json ("{}") 获取代码为 204 的删除响应。

okhttp3.internal.http.HttpEngine课堂上有一个令人讨厌的事情被抛出:

如果您尝试在标头中返回没有内容(服务器端)的内容,但 Content-Length 仍大于 0;

任何非服务器端的想法如何解决这个问题?

0 投票
1 回答
2662 浏览

json - 使用 gson 和 Retrofit 2 将所有 JSON 存储在 Map 中

我正在使用 Retrofit 从 API 获取 JSON 值。但是,由于每次请求数据时实际的键都会不同,所以我想将所有内容存储在 Map 中。这可以使用 Gson 作为解析器吗?

例如: 访问 #1:

访问#2:

而不是创建一个类,例如

这是不可能的,因为钥匙总是不同的,我想要这样的东西:

谢谢!

0 投票
0 回答
1027 浏览

android - 无法使用 Retrofit 2.0 上传图片

我正在尝试使用改造 2.0 上传图像。

1.APIServiceInterface.java

2.ServiceGenerator.java

但是在这里我在使用 OkHttpClient 时遇到错误。Builder 说无法解析 Builder 类。

3. build.gradle 文件:

请指导我如何使用 Retrofit 2.0 将文件上传到服务器。

我正在使用教程将文件上传到服务器。在这里,我需要创建一个服务生成器类,如下所示:

我现在已经编辑了我的代码。请不要考虑上面提到的代码。现在考虑以下内容: 编辑代码:

1.build.gradle

2.ServiceGenerator.java

3.WelcomeActivity.java

预期的 JSON 响应:

在解析 JSON 响应时,我得到了响应字符串中指定的状态代码 200。但我无法从upload_data 对象接收file_name。我不知道我在哪里做错了。请帮我解决问题。

要使用的 URL 是:

图片需要作为 multipart/form-data 上传。文件“名称”属性必须是“图像”。

0 投票
1 回答
3737 浏览

java - 为什么我在使用 Retrofit2 时得到“Type okhttp3.Call 没有类型参数”?

我正在尝试按照本教程进行 Retrofit2 Getting Started and Create an Android Client

进口没问题

我可以按照教程很好,除了一件事。我正在尝试创建GitHubService Interface,但遇到了两个问题:Call<V>说它不接受任何类型参数,而且我也不确定将Contributor类放在哪里,因为它根据教程仅声明为static,这是否意味着它嵌套在某个地方?

我将 Contributor 类放在一个单独的文件中,并将其公开。此外,Call 类不会在 Android Studio 中自动导入,我必须手动选择它,但这是我得到的唯一 Call(Android 手机 api 除外)

请帮助我了解为什么会出现此错误,据我所知,周围没有人有相同的东西,所以我缺少一些基本的东西。

0 投票
2 回答
25225 浏览

android - 使用 Retrofit 2.0 POST 方法获取请求正文内容

在执行操作之前,我需要获取请求正文并使用 Retrofit 2.0 执行一些逻辑enque操作。但不幸的是,我无法从我的服务电话中获取帖子正文内容。目前,经过大量搜索后,我只找到了一个解决方案,例如我使用该方法使用 Retrofit 2.0通过使用with发布logging的解决方案。我正在使用以下代码在 Android Logcat 中记录请求正文:requestHttpLoggingInterceptorOkHttpClient

我使用上述方法面临的问题:

  1. 请求正文仅在默认的 Android Logcat 上可见,例如

02-04 01:35:59.235 5007-5035/com.example.retrofitdemo D/OkHttp:{"nameValuePairs":{"id":"1","name":"chandru","type":"user"}}

但是上述方法只返回 logcat 中的响应正文,我无法将其作为Stringor获取JSONObject。即使我能够使用 获取响应正文HttpLoggingInterceptor,即使在应用程序投入生产之后,我的请求正文也会一直显示在带有“OkHttp”标签的 Logcat 中(所以这主要是一种缓解帖子的方式logcat 中的数据)。

我的要求:

我需要以或任何方法获取请求正文,StringJSONObject无需修改 Logcat 中的发布数据。

我尝试了什么:

onResponse即使在from之后,我也尝试获取请求正文Response<T> response,但是尽管我无法完成它。请找到我用于此目的的代码如下:

注意:上述转换后的请求体 usinggson.toJson方法只返回元数据,不返回请求 post 数据。

请通过提供您宝贵的提示和解决方案来帮助我。我不知道该怎么做。在过去的两天里,我完全被这个问题所困扰。如果我的问题太长,请原谅。欢迎你提出任何建议。如果我的要求不清楚,请告诉我。提前致谢。