Java 阅读内容标题被android切断?

Java 阅读内容标题被android切断?,java,android,json,eclipse,Java,Android,Json,Eclipse,我正在调用一个API,对于另一个应用程序,API在C#中返回良好,但在Android中,对于我们的应用程序,它在5534字符后被切断,对于较小的数据集,它返回良好,但在此之后被切断。。字符串看起来像这样: response.getFirstHeader(“X-JSON”).getValue()将返回此 [{"Customer":"","Name":"Fred","MI":"","ContactType":"Person","Id":8909,"IsDeleted":false,"TotalCli

我正在调用一个API,对于另一个应用程序,API在C#中返回良好,但在Android中,对于我们的应用程序,它在5534字符后被切断,对于较小的数据集,它返回良好,但在此之后被切断。。字符串看起来像这样:

response.getFirstHeader(“X-JSON”).getValue()将返回此

[{"Customer":"","Name":"Fred","MI":"","ContactType":"Person","Id":8909,"IsDeleted":false,"TotalClients":0},...."MANY MORE HERE"...
 ...{"Customer":"","Name":"Test Name","MI":"B","ContactType":"Person","Id"
直到最后一行我都很好,因为你可以看到它被“Id”剪掉了。当我尝试使用较小的集合时,通过向较小的帐户调用API,这很好。。它从来没有被切断过,我得到了预期的结果,另一方面,对于这个拥有大量数据的大客户来说,它并没有得到一切

你知道会是什么问题吗

相关代码如下:

        DefaultHttpClient client = HttpSingleton.getThreadSafeClient();
        HttpGet get = new HttpGet(URL);
        get.setHeader("Accept", "application/json");
        HttpResponse response = client.execute(get);
        get.abort();
        printHeaders(response);             
        responseString = response.getFirstHeader("X-JSON").getValue();

您是否将数据作为HTTP头传递?您可以在HTTP头中传递的数据大小有限制。。见此:


为什么不像往常一样在响应正文中传递数据?

为什么在标题中返回数据?我不知道这是一个外部API,我们无法控制它的返回方式。也许它也在正文中传递,我将查看正文返回的内容。您是否尝试使用httpurlconnection而不是httpclient?可能是httpclient库只读取了这么多的头。我实际上是从服务器获取数据,我试图从给定的API获取数据,我们确信API可以工作,它可以传递所有数据,因为我们在IPhone上使用它,但我不确定安卓为什么要切断它,我们刚刚开始开发Android应用程序,它对我们来说是一种新的应用程序。同意@Oscar的说法,在标题中发送请求内容不是标准的做法。当应用程序服务器中的最大标题大小未达到时,您会从服务器获取数据。但一旦该值被克服,标头将被截断,并出现意外行为。。。Http头用于承载有关客户端浏览器、请求页面、服务器等的信息,而请求负载用于表示真实的请求数据。发送请求体中的数据,而不是HTTP头中的数据,您的问题将得到解决。