FiddlerApplication не фиксирует правильный код ответа на угловой странице
Я использую пример проекта от JimEvans с именем WebDriverProxyExamples. Этот проект использует Selenium вместе с FiddlerApplication. Пока что я доволен увиденным с кодом и кодами ответа. Но когда я пытаюсь захватить код ответа целевой страницы AngularJs, он не может захватить код ответа и возвращает 0.
Редактировать: фрагмент кода, который я пытался использовать для отладки
SessionStateHandler responseHandler = delegate(Session targetSession)
{
if (printDebugInfo)
{
Console.WriteLine("DEBUG: Received response for resource with URL {0}", targetSession.fullUrl);
}
if (targetSession.fullUrl == targetUrl)
{
responseCode = targetSession.oResponse.headers.HTTPResponseCode;
Console.WriteLine(targetSession.oResponse.headers);
if (printDebugInfo)
{
Console.WriteLine("DEBUG: Found response for {0}, setting response code.", targetSession.fullUrl);
}
}
};
// Attach the event handler, perform the navigation, and wait for
// the status code to be non-zero, or to timeout. Then detach the
// event handler and return the response code.
FiddlerApplication.AfterSessionComplete += responseHandler;
driver.Url = targetUrl;
while (responseCode == 0 && DateTime.Now < endTime)
{
System.Threading.Thread.Sleep(100);
}
FiddlerApplication.AfterSessionComplete -= responseHandler;
return responseCode;
1 ответ
Есть несколько возможных объяснений, включая то, что у вас нет правильного генератора сертификатов (например, makecert.exe), расположенного в нужном месте. Вы должны изменить код WebDriverProxyExample для подключения обработчиков ошибок для отображения:
Fiddler.FiddlerApplication.OnNotification += delegate(object sender, NotificationEventArgs oNEA) { Console.WriteLine("** NotifyUser: " + oNEA.NotifyString); };
Fiddler.FiddlerApplication.Log.OnLogString += delegate(object sender, LogEventArgs oLEA) { Console.WriteLine("** LogString: " + oLEA.LogString); };