Eu queria saber o tamanho total de todo o request enviado, e de todo o response que sera enviado. Tem algum jeito sem ter de pegar todos os header e respectivos valores? E para o response?
Olá
Idéias:
-
Usar uma ferramenta tipo tcpdump ou ethereal
-
Serializar os objetos enviados (e recebidos) e ver o tamanho do arquivo gravado
-
Os posts vem com o tamanho do payload, basta então adicionar o tamanho dos headers.
[]s
Luca
Oi Luca
Nao posso usar ethereal, eu preciso saber isso pra cada request/response em tempo de execucacao. Posso ter GETs tambem. Olha soh:
int total = 0;
Enumeration ex = req.getHeaderNames();
while(ex.hasMoreElements()) {
String headerName = (String) ex.nextElement();
total+=headerName.length();
Enumeration e2 = req.getHeaders(headerName);
while(e2.hasMoreElements()) {
String header = (String) e2.nextElement();
System.out.println(headerName + ": " + header);
total +=header.length();
}
}
essa coisa feia me da o seguinte:
host: localhost:58080
user-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20040913 Firefox/0.10.1
accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
accept-language: en-us,en;q=0.5
accept-encoding: gzip,deflate
accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
keep-alive: 300
connection: keep-alive
Header size deu 347 e se eu peco o content length ele da -1.
Entao ele nao esta contabilizando o tamanho da linha do conteudo, que eh o GET BLAH BLAH. como faco para contar isso tambem?