什么是Android Post方法的最大尺寸android
问题描述:
什么是android Post方法的最大尺寸?当我收到来自服务器的响应时,部分消息丢失。我认为它可能已达到post方法的最大大小。 如果post方法没有限制,是否需要更改我的服务器规范?什么是Android Post方法的最大尺寸android
答
理论上没有限制。 POST响应大小限于Java VM堆大小which is device independent。这可能比您的帖子回复消耗的要多。
如何验证您的部分响应是否缺失?如果您使用LogCat打印出来或者在调试模式下查看它,那么您只能看到以三个点结尾的消息的开头(所有消息都在那里,而不是只显示给您)。
答
我有同样的问题,我使用HttpPost和从服务器得到的响应,但一部分数据由于其非常大的规模而错过了。这就是为什么我使用其他方式:HttpURLConnection与OuputStream发送请求到服务器和BufferedReader/InputStream获取响应。
HttpURLConnection my_httpConnection = (HttpURLConnection) new URL("https://integrator-ut.vegaconnection.com/Authentication.svc?wsdl").openConnection();
my_httpConnection.setRequestMethod("POST");
my_httpConnection.setDoInput(true);
my_httpConnection.setDoOutput(true);
my_httpConnection.setRequestProperty("Content-type", "text/xml; charset=utf-8");
OutputStream my_outPutStream = this.my_httpConnection.getOutputStream();
Writer my_writer = new OutputStreamWriter(my_outPutStream);
my_writer.write(YOUR_REQUEST); //YOUR_REQUEST is a String
my_writer.flush();
my_writer.close();
BufferedReader my_bufferReader = new BufferedReader(new InputStreamReader(this.my_httpConnection.getInputStream()));
char[] buffer = new char[10000];
int nbCharRead=0;
try
{
while((nbCharRead = my_bufferReader.read(buffer, 0, 10000)) != -1)
{
/* Your treatement : saving on a file/arraylist/etc
}
}
它似乎是基于浏览器,并基于服务器的配置。我不认为(理论上)有一个限制。 – Randroid