当前位置: 首页 > 面试题库 >

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

隆扬
2023-03-14
问题内容
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 $

非常感谢您的帮助。


问题答案:

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

预期的BEGIN_OBJECT

您的JSON是一个对象,所有JSON对象都用花括号({})括起来。因此,BEGIN_OBJECT为{。并期待它在某个地方。

但在STRING

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

在第1行第1列的路径$

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



 类似资料: