質問

fiddlerのセッションリストに各リクエストのサイズを表示したいと思います。これまで試したのは、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 "?";
}

ただし、フィドラーがスクリプトを読み込もうとするとエラーになります。

コメントのある行を次のように変更した場合:

    return typeof(oS.requestBodyBytes.Length);

その後、フィドラーはRequestSize列に「番号」を表示します。そのため、私が達成しようとしているものからそれほど遠くないのではないかと思います。 requestBodyBytesフィールドのサイズを表示する方法がわかりません。

間違っていることや欠けていることのヒントはありますか?

役に立ちましたか?

解決

更新 Fiddlerの最新バージョンでは、列ヘッダーを右クリックして[列のカスタマイズ]を選択するだけです。 その他を追加> リクエストサイズ列。


必要に応じて、リクエスト本文の長さのみが表示され、ヘッダーのサイズは含まれないため、実際には実行したくない場合があります。

改良版はこちら:

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();
}

他のヒント

OK、私は遠くないことを知っていました。これが私の質問に対する答えです。

このスクリプトをCustomRules.jsに配置すると、フィドラーでHTTPリクエストの長さ/サイズが出力されます:

public  static  BindUIColumn("Req-Length")
function  CalcMethodCol(oS:  Session){
    if (null != oS.oRequest)
            return oS.requestBodyBytes.LongLength.ToString();
        else
            return String.Empty;
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top