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

没有收到完整的JSON响应

太叔航
2023-03-14

我正在使用Volley向API发出GET请求:

    StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            Log.i("RESPONSE",response);

            //this method parses the JSON response and fills it into a custom ArrayList
            parseResponse(response);
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.i("Sorry", "unable to get the response!");
        }
    });

预期的JSON对象响应很大(可能高达500 KB)。我无法在日志中看到完整的响应。仅显示前50行左右。我还得到了基本网络。日志请求info:

BasicNetwork.log慢速请求:请求的HTTP响应=

这意味着请求需要超过3000毫秒。

尝试过的事情:

我已经在手机的开发者选项中将记录器缓冲区大小增加到1M。

原因可能是什么?当它很大的时候,响应是大块发送的吗?如果是,如何加入它们来解析完整的响应?

共有1个答案

艾成益
2023-03-14

日志不会显示完整的字符串。如果字符串很大,请尝试写入磁盘上的文件,并检查其是否完整。

您还可以使用此方法打印完整的日志:

public static void longInfo(String str) {
    if(str.length() > 4000) {
        Log.i(TAG, str.substring(0, 4000));
        longInfo(str.substring(4000));
    } else
        Log.i(TAG, str);
}
 类似资料:
  • 下面是关于如何设置messenger机器人的Facebook教程-使用ngrok设置我的webhook。本地测试一切顺利,但在向bot发送消息时仍然没有收到任何响应。 韩国https://ngrok.com/ facebook教程https://developers.facebook.com/docs/messenger-platform/getting-started/quick-start/

  • APIService: 在活动调用API中:

  • 我没有从改造422代码中获得完整的响应字符串作为JSON 这是我在错误体中得到的 谢谢 更新 我已经成功地将我对错误体的响应转换为Json UpdatePasswordError.kt )

  • 问题内容: 我有一个按24x6时间表运行的应用程序。当前,运行几天后,会自动执行Full GC(通常在一天中的繁忙时间),这会对用户响应时间产生负面影响。 我想做的是强制使用Full GC(也许是在每晚的午夜,在非常短的使用时间内),以防止它在白天发生。我已经尝试过System.gc(),但是它似乎无法保证何时会发生Full GC,甚至不会发生。有这样做的方法吗? 版本信息: Java™SE运行时

  • 有人能帮忙吗?我的栈是ubuntu-server 14.04带nginx/passenger和ruby 2.2.2。我无法让我的项目投入生产。开发中一切运行良好。 秘密.yml 计算机网络服务器 error.log 编辑:我忘了说我正在使用设计进行身份验证。