Как узнать время передачи в кастомном Fiddler инспекторе
Я пишу пользовательский инспектор Fiddler (унаследованный от Inspector2 и реализующий IResponseInspector2), и одна из вещей, которые я хочу показать в выводе инспектора, это время, которое требуется для ответа, возвращаемого с сервера (относительно времени соответствующий запрос был отправлен от клиента).
Я в основном хочу, чтобы пользователь видел, сколько времени потребовался запрос, без необходимости переключаться в представление временной шкалы.
Кто-нибудь знает, есть ли способ сделать это?
2 ответа
Хорошо, я нашел способ, но кажется, что он был хакерским - может быть, есть лучший способ.
Session[] sessions = FiddlerApplication.UI.GetSelectedSessions();
if (sessions != null && sessions.Length == 1)
{
Session s = sessions[0];
if (s != null && (s.state == SessionStates.Done))
{
TimeSpan totalTime = s.Timers.ClientDoneResponse - s.Timers.ClientBeginRequest;
Debug.WriteLine("Time = " + totalTime.ToString());
}
}
Я думаю, я хочу более элегантный способ получить Session
связан с ответом, который в настоящее время обрабатывает инспектор.
В FilderScript найдите переменные m_ShowTTLB и m_ShowTimestamp и установите для всех значение true. Показать результат в пользовательском столбце
// Show the duration between the start of Request.Send and Response.Completed in Milliseconds
public static RulesOption("&Show Time-to-Last-Byte", "Per&formance")
var m_ShowTTLB: boolean = true;
// Show the time of response completion
public static RulesOption("Show Response &Timestamp", "Per&formance")
var m_ShowTimestamp: boolean = true;