Pregunta

Tengo un proceso de TIBCO BW que se inicia con el 'receptor HTTP' Actividad.

Me gustaría obtener (a través de una actividad de Código Java personalizada) el tamaño de la solicitud HTTP inicial. (El propósito es que las estadísticas recogen, los tiempos de respuesta medida, petición / respuesta tamaños, etc.)

Me gustaría medir los datos en bytes y no en caracteres, es posible obtener la solicitud como una matriz de bytes, ServletInputStream o algo similar?

¿Fue útil?

Solución

No creo que se puede obtener la solicitud original de código Java - simplemente porque no se puede acceder al objeto del receptor HTTP HTTPServletRequest de una actividad de Java. Si desea acceder a los datos de la solicitud primas, puede escribir un servlet y el acceso al proxy BusinessWorks a través de este servlet proxy.

Si su tarea es sólo para obtener estadísticas sobre el tamaño de la petición, hay una solución más simple. Se puede utilizar el parámetro de cabecera "de longitud de contenido" por esta razón ( http: // www.w3.org/Protocols/rfc2616/rfc2616-sec14.html ).

  

El campo de entidad de cabecera Content-Length indica el tamaño de la entidad y el cuerpo,   en número decimal de octetos, enviado al destinatario

Contenido de longitud es un parámetro de salida de la HTTP receptor. Es posible que tenga que añadir la longitud de "RequestURI", "Postdata" y los parámetros "cabecera", ya que no son parte del cuerpo de la entidad.


Actualización: Postdatum es parte de entidad-cuerpo, por tanto, su tamaño está incluido en contenido de longitud

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top