Retrofit2:预期为 BEGIN_ARRAY,但在第 1 行第 268 列路径 $[0].images 处为 STRING

2024-03-19

我知道这不是第一次有人问这个问题,但使用 Retrofit2 我找不到正确的解决方案来解决我的问题。

我有一个包含字符串列表的对象。当我想将 JSON 响应转换为我的对象时,所有其他字段都可以,但在将字符串列表转换为我的列表时出现此错误:

Retrofit2: Expected BEGIN_ARRAY but was STRING at line 1 column 268 path $[0].images

这是我的 API:

@POST("/cp/api/")// get list of products
    Call<List<Product>> Get_Special_Products(@Body Object request);

我的改造设置:

public Retrofit Store_retrofit(OkHttpClient client) {
        return new Retrofit.Builder()
                .baseUrl(Urls.Sotre_Base_Url)
                .client(client)
                .addConverterFactory(GsonConverterFactory.create())
                .build();
    }

我的对象:

public class Product implements Serializable {
    @SerializedName("id")
    private int id;
    @SerializedName("user_id")
    private int user_id;
    @SerializedName("cat_id")
    private int cat_id;
    @SerializedName("title")
    private String title;
    @SerializedName("description")
    private String description;
    @SerializedName("image")
    private String image;
    @SerializedName("images")
    private List<String> images;
public int getUser_id() {
        return user_id;
    }

    public int getCat_id() {
        return cat_id;
    }

    public String getTitle() {
        return title;
    }

    public String getDescription() {
        return description;
    }

    public String getImage() {
        return image;
    }
public List<String> getImages() {
        return images;
    }
}

这是导致图像错误的 JSON 的一部分:

images:[
    "1487801544.jpg","1487801544.jpg","1487801544.jpg"
]

当您的 API 服务无法将数组转换为 json 并且 Retrofit 将其读取为 String 时,通常会发生这种情况。 调用您的API服务提供商来解决将数组转换为json的问题:) 例如

"images": "[\"1487801544.jpg\",\"1487801544.jpg\",\"148801544.jpg\"]"

改造上面读取为字符串,应更改如下:

"images": [
      "1487801544.jpg",
      "1487801544.jpg",
      "1487801544.jpg"
    ]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Retrofit2:预期为 BEGIN_ARRAY,但在第 1 行第 268 列路径 $[0].images 处为 STRING 的相关文章

随机推荐

  • 非法字符错误:'\u200b'

    我正在面向对象编程课程中为小行星游戏制作小行星场 但收到非法字符错误 u200b 该问题似乎发生在第 12 行 import java awt Point 和 public class Asteroid extends PolyBlob 之
  • 回到 Rails

    因此 在离开几年后 我决定重新使用 Ruby on Rails 来完成我的一些个人项目 我想知道什么是了解 Rails 新功能的最佳资源 自从 1 2 发布以来 我什至还没有真正接触过 Rails 哦 是的 TextMate 仍然是 Mac
  • 如何替换字符串中的奇怪模式?

    我正在用 SQL 创建一个临时过程 因为我有一个用 markdown 编写的表的值 因此它在 Web 浏览器中显示为呈现的 HTML Markdown 到 HTML 的转换 该列的字符串当前如下所示 Questions about gene
  • 如何修复“App Store 连接操作错误 ITMS-90771”

    我正在尝试将我的应用程序提交到 TestFlight 但我不断收到此错误 这就是我的info plist 我该如何解决 将其添加到您的 info plist 中 然后重新提交您的应用程序
  • 为什么“element.innerHTML=”是错误的代码?

    我被告知不要使用附加内容element innerHTML 像这样 var str div hello world div var elm document getElementById targetID elm innerHTML str
  • kafka AdminClient API等待节点分配超时

    我是卡夫卡的新手 正在尝试使用AdminClient用于管理在我的本地计算机上运行的 Kafka 服务器的 API 我的设置与中完全相同快速开始 http kafka apache org quickstartKafka 文档的部分 唯一的
  • 使用 NSArrayController 分段 NSTableView

    我正在尝试创建一个分段NSTableView using NSArrayController和可可绑定 我正在寻找类似的方法 例如NSFetchedResultsController在 iOS 中 您可以在其中设置部分键路径 我想做一些类似
  • 在 cakephp 中使用本地化

    如何本地化 cakePhp 中的字符串 我在在线文档方面没有取得任何成功 谢谢你的帮助 有几个步骤 首先 设置要使用的区域设置 创建一个或多个 po该语言的文件 将所有支持 l10n 的字符串包裹起来 or d 辅助方法 以下是我的一个项目
  • 自适应卡:如何创建 6 列的表格而不截断文本?

    我创建了一张自适应卡来显示为表格 但是 文本被截断了 就像Today I 代替Today In Count完整的文本 此自适应卡适用于 Microsoft Teams 自适应卡 schema http adaptivecards io sc
  • blockUI 与 ajax 的异步选项为 false

    我需要调用一个 javascript 函数来返回 ajax 调用的内容 为了达到这个结果 我在 ajax 调用中将 async 选项设置为 false function ajaxQuery var content ajax url blab
  • 使用 DbConnection 执行存储过程

    我需要在数据库上执行存储过程 这是我到目前为止所得到的有效方法 protected DbProviderFactory dbProviderFactory this dbProviderFactory DalFactory GetFacto
  • Common Lisp 重新启动到条件绑定

    我在空闲时间学习 Common Lisp 并对条件系统有疑问 当我们在 common lisp 中处理错误时 我们在处理程序中指定错误类型来确定要处理哪个错误 在引发和处理错误之间 我可以进行一些重新启动 例如使用 restart case
  • bash 内置命令“select”无法通过 shell 脚本中的管道工作

    我使用bash内置命令编写了一个shell脚本select创建选择菜单 调用时效果很好bash直接地 但如果我使用管道 例如cat script sh bash the select功能将无法工作 例如 代码片段显示 usr bin env
  • 如何实现OnFragmentInteractionListener

    我在 android studio 0 8 2 中有一个带有导航抽屉的向导生成的应用程序 我创建了一个片段并使用 newInstance 添加它 但出现此错误 com domain myapp E AndroidRuntime 致命异常 m
  • Python:日志处理程序仅记录级别小于错误的日志

    我需要一种方法让 python 记录器不记录 ERROR 或以上错误 只需要它记录少于 ERROR 的信息 import logging from logging import StreamHandler def get log forma
  • 实施简单的文档管理

    我的问题是 根据以下要求 您将如何继续实施简单的DMS 文档管理 DMS应该是分布式Web应用程序 支持文档版本控制 支持文档锁定 文档搜索 我已经清楚我想使用什么技术 我将使用 Spring MVC Hibernate 和关系数据库 最有
  • 元素数组中的 jQuery min/max 属性

    有没有一种简单的方法可以从 jQuery 元素数组中查找 min max 属性 我经常发现自己根据最小和最大对应项动态调整元素组的大小 大多数时候 这与元素的宽度和 或高度有关 但我确信这可以应用于元素的任何属性 我通常会做这样的事情 va
  • 使用 EncodePointer/DecodePointer 的好处

    使用有什么好处编码指针 解码指针在 Windows 中 MSDN say 对全局可用的指针进行编码有助于保护它们不被利用 这编码指针函数用秘密来混淆指针值 以便外部代理无法预测它 使用的秘密编码指针每个进程都不同 现在的问题是 如果攻击者位
  • C++ 中的动态树

    我想制作一棵树 每个节点都可以有一些子节点 但我不知道它们的数量 树必须在小内存中使用 无额外数据 以每个节点的恒定时间进行编码 我认为我将创建具有值和子属性 值是 int 子属性是堆栈 的类 Tree 以及指向该树中每个节点的指针数组 我
  • Retrofit2:预期为 BEGIN_ARRAY,但在第 1 行第 268 列路径 $[0].images 处为 STRING

    我知道这不是第一次有人问这个问题 但使用 Retrofit2 我找不到正确的解决方案来解决我的问题 我有一个包含字符串列表的对象 当我想将 JSON 响应转换为我的对象时 所有其他字段都可以 但在将字符串列表转换为我的列表时出现此错误 Re