android–Retrofit2:预计BEGIN_ARRAY但是STRING在第1行第268行路径$[0] .images

android–Retrofit2:预计BEGIN_ARRAY但是STRING在第1行第268行路径$[0] .images,第1张

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

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

我有一个包含String列表的对象.当我想将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"    ]
总结

以上是内存溢出为你收集整理的android – Retrofit2:预计BEGIN_ARRAY但是STRING在第1行第268行路径$[0] .images全部内容,希望文章能够帮你解决android – Retrofit2:预计BEGIN_ARRAY但是STRING在第1行第268行路径$[0] .images所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1119558.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存