一尘不染

JSON 错误“java.lang.IllegalStateException:预期为 BEGIN_OBJECT,但在第 1 行第 1 列路径 $ 处为 STRING”

javascript

public interface UserService {
    @POST(Constants.Api.URL_REGISTRATION)
    @FormUrlEncoded
    BaseWrapper registerUser(@Field("first_name") String firstname, @Field("last_name") String lastname, @Field("regNumber") String phone, @Field("regRole") int role);


 public BaseWrapper registerUser(User user) {
        return getUserService().registerUser(user.getFirstName(), user.getLastName(), user.getPhone(), user.getRole());
    }

这创建异常

 com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $

非常感谢您的帮助。


阅读 429

收藏
2021-08-16

共1个答案

一尘不染

让我们看看您收到的错误。

Expected BEGIN_OBJECT

您的 JSON 是一个对象,所有 JSON 对象都包含在花括号 ({}) 中。因此 BEGIN_OBJECT 是 {。它正在某处期待它。

but was STRING

但相反,他发现了一个字符串“Something”。仍然没有告诉我们在哪里。

at line 1 column 1 path $

在第 1 行第 1 列。这是 JSON 的开始。因此,您忘记将整个内容包含在 {} 中(或者至少您忘记了第一个,但我敢打赌您已经忘记了它们)。

2021-08-16