Pregunta

Me gustaría mostrar el tamaño de cada solicitud en la lista de sesiones de fiddler. Lo que intenté hasta ahora fue agregar una columna personalizada en el archivo CustomRules.js:

public static BindUIColumn("RequestSize")
function CalcMethodCol(oS: Session)
{
  if (null != oS.requestBodyBytes)
    return oS.requestBodyBytes.Length; //this is the relevant line
  else
    return "?";
}

Pero esto produce un error cuando el violinista intenta cargar el script.

Si cambio la línea con el comentario a esto:

    return typeof(oS.requestBodyBytes.Length);

luego fiddler muestra 'número' en la columna RequestSize. Por eso supongo que no estoy muy lejos de lo que estoy tratando de lograr. Simplemente no puedo entender cómo mostrar el tamaño del campo requestBodyBytes.

¿Alguna pista de lo que estoy haciendo mal o de lo que falta?

¿Fue útil?

Solución

Actualizar En las versiones modernas de Fiddler, simplemente puede hacer clic con el botón derecho en los encabezados de las columnas, elegir "Personalizar columnas". y agregue Miscellaneous > Columna Tamaño de solicitud .


Dependiendo de sus necesidades, eso podría no ser lo que realmente quiere hacer, porque solo muestra la longitud del cuerpo de la solicitud y no incluye el tamaño de los encabezados.

Aquí hay una versión mejorada:

public  static  BindUIColumn("Req-Size")
function  CalcReqSize(oS:  Session){        
  if (null == oS.oRequest) return String.Empty;
  var cBytesOut: int = 0;

  if (null != oS.requestBodyBytes) cBytesOut += oS.requestBodyBytes.LongLength; 
  if ((null != oS.oRequest) && (null != oS.oRequest.headers)) cBytesOut += 
  oS.oRequest.headers.ByteCount() ; 
  return cBytesOut.ToString();
}

Otros consejos

Bien, sabía que no estaba lejos. Aquí está la respuesta a mi pregunta.

Este script, cuando se coloca en CustomRules.js, imprimirá la longitud / tamaño de la solicitud HTTP en el violinista:

public  static  BindUIColumn("Req-Length")
function  CalcMethodCol(oS:  Session){
    if (null != oS.oRequest)
            return oS.requestBodyBytes.LongLength.ToString();
        else
            return String.Empty;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top