当前位置: 首页 > 知识库问答 >
问题:

com.google.gson.stream.使用JsonReader.setLenient(true)在第2行第2列路径$接受格式错误的JSON

胥康安
2023-03-14

在登录时间我得到了这个错误,请不要降级,如果你知道任何解决方案,请指导我。我也检查了不同的堆栈溢出后,但他们都在谈论修剪字符串或其他改造的解决方案,但我不能解决它。我用截击。

我的Json文件:-

{
  "error": false,
  "user": [
    {
      "user_id": "123",
      "customer_name": "Abc",
      "email": "abc@example.com",
      "salt": "123abc",
      "phone": "1234567890",
      "address": "Enter Address",
      "postal_code": "1234"
    }
  ]
}

这是我的Java类:-

@Override
    protected String doInBackground(Boolean... booleen) {
        ExampleApi exampleApi = new ExampleApi();
        LoginUser result;
        try {
            result = exampleApi.loginPost(sharedPreferences.getString("abc_id", ""), semail, fcmToken, spassword);
            Gson gson = new Gson();                           
            String json = gson.toJson(result);
            JSONObject jObj = new JSONObject(json);
            Log.e("result1", String.valueOf(jObj));
            if (jObj.getString("error").equalsIgnoreCase("false")) {
                JSONArray jsonArray = jObj.getJSONArray("user");
                JSONObject jsonObject1 = jsonArray.getJSONObject(0);
                 return "true";
                 }else {
                String errormsg = jObj.getString("error_msg");
                return errormsg;
            }
            } catch (ApiException e) {
            e.printStackTrace();
            Log.e("error", e.toString());
        } catch (JSONException e) {
            e.printStackTrace();
            }
            }

共有3个答案

郝玄天
2023-03-14

在我的例子中,这个错误是由于非UTF-8 json文件编码而产生的。当我把它转换成UTF-8时,一切都开始工作了。

盖绪
2023-03-14

检查user对象user\u id、customer\u name.etc)的属性是否格式正确,与作为响应接收的对象相同。

ps:如果user_id用户对象中的整数,那么它也应该是整数

谭骏
2023-03-14

你能尝试如下初始化Gson吗

Gson gson = new GsonBuilder()
        .setLenient()
        .create();

可能预期的JSON中存在问题。

 类似资料:
  • 试图使用Refundation以JSON格式发送信息,但它进入Refundation的方法并抛出以下错误: 到目前为止,我已经尝试使用以下链接中的答案来解决这个问题:1)改型API异常?2) 使用JsonReader。setLenient(true)在第1行第1列路径接受格式错误的JSON$ 这是我的代码: 改装接口: 与连接相关的主要活动: 用户类别: 服务器端希望JSON如下所示: 我知道st

  • 我正在尝试为我的应用程序创建忘记密码脚本。当我运行我的apk并尝试保留我的密码时,我得到了一个错误,上面写着使用JsonReader。setLenient(true)要在第1行第1列路径$Error处接受格式错误的JSON,我的apk中一切正常,我可以登录、注销或注册,但当我重置密码时,我得到了JsonReader。设置宽容(真)错误。我的apk json正在工作,它是正确的。请帮帮我。我在分享我

  • 我正在从api struct获取数据时出现了此错误。我查阅了许多网站,以供参考,但我没有得到适当的解决方案 Api接口。JAVA 主要活动。JAVA 这是json数据 错误堆栈

  • 这个错误是什么?我怎样才能解决这个问题?我的应用程序正在运行,但无法加载数据。这是我的错误:使用JsonReader.setLenient(true)在第1行第1列路径$接受格式错误的JSON 这是我的片段: 请求接口: 总是这个错误不是关于你的json,它可能来自你的错误请求,为了更好地处理,首先在邮递员中检查你的请求,如果你得到了响应,然后将你的json响应与你的模型进行比较,如果没有错误,那

  • 我想通过php party将数据添加到MySQL。但是我一直失败。检查网站上的数据。仍然没有解决方案。我哪里出错了? 我尝试了以下方法,但似乎无法解决问题。如何修复“使用JsonReader”。setLenient(true)在Android Studio中的第1行第1列path$'错误处接受格式错误的JSON,并使用JsonReader。setLenient(true)在第1行第1列路径接受格式

  • 当我尝试访问我的Web服务,在onFailure我得到在LogCat. i可以从POSTMAN得到响应 这是邮差的回复 在线更新 方法 PHP服务响应 UpdateOrderResponse模块类 使现代化 我添加了以进行改装。就像下面 然后得到另一个错误在它是