【发布时间】:2018-03-05 20:31:28
【问题描述】:
我正在升级一些从服务器提取数据的旧版 Android/Java 代码。遗留代码使用 HttpURLConnection 并拉入 inputStream 并将其转换为 GZipInputStream。然后将结果转换为 JSONObject。然后手动解析数据。这一切都很好,这意味着返回有效的 json,因为它以 '{'
开头我正在尝试使用 Retrofit2 和 GsonConverterFactory 升级此代码,以便我可以将 json 自动映射到类。
我收到一个错误:预期为 BEGIN_OBJECT,但在第 1 行第 1 列路径 $
这告诉我数据是以字符串而不是 JSON 对象的形式传入的。
注意:我正在为我的旧代码和新的 Retrofit 实现发送相同的标头和查询参数——但结果不同——无法弄清楚原因。
【问题讨论】:
-
这告诉你它需要一个
JSONObject,但它却找到了一个字符串。所以在使用Gson.from();时使用String.class -
我没有手动使用 gson。我正在使用 GsonConverterFactory
标签: java android retrofit2 gson