Скріптуемий оцінний проксі fiddler

Fiddler - проксі, який працює з трафіком між Вашим комп'ютером і віддаленим сервером, і дозволяє інспектувати і міняти його.

Fiddler можна розширювати за допомогою скриптів на мові JScript.NET (писати їх дуже просто), кустомізованих меню програми, і взагалі - чудовий інструмент.

Використовувати його можна з будь-яким браузером.

У Fiddler є 2 способи підключення. Перший - це просто запустити його. При цьому він автоматично буде працювати для програм, що використовують WinINET.
Це, наприклад, Internet Explorer і програми MS Office.

Другий - це поставити Fiddler як проксі для браузера. Наприклад, такий спосіб зручний для Firefox. Налаштування Fiddler як проксі знаходяться в меню Fiddler Tools -> Fiddler Options, під General в Proxy Settings.

Щоб уможливити підключення інших браузерів, потрібно включити галочку Allow remote clients to connect. Після цього Fiddler стане доступний як проксі, за замовчуванням - на IP 127.0.0.1 порту 8888

Для зручного перемикання на Fiddler і назад при наявності Firefox - інсталяційний скрипт встановить спеціальне розширення Fiddler Hook, яке дозволить перемикатися на фіддлер і назад по міні-менюшке внизу-праворуч.
Виглядає ось так:

Скріптуемий оцінний проксі fiddler

При заході в Fiddler, відкривається вікно запитів зліва і робочі вкладки праворуч.

Скріптуемий оцінний проксі fiddler

  1. Performance Statistics
    Дозволяє отримувати різні статистики як по одному запиту, так і по пачці виділених
  2. Session Inspector
    Дає можливість переглядати в різному вигляді заголовки і дані запиту. Крім того, в режимі перехоплення запиту (див нижче), відповідь сервера можна модифікувати "на льоту".
  3. AutoResponder
    У цій вкладці задаються правила, які говорять Fiddler видавати на потрібні запити - вже готові відповіді, без звернення до сервера.
  4. RequestBuilder
    Зручний (вже краще, ніж telnet) спосіб самостійно конструювати HTTP-запити.
    Можна завантажити готовий запит з лівого вікна, "перетягнувши" його мишой в цю вкладку.
  5. Filters
    Призначити дії в залежності від виду запиту ..

Правила (Rules) - основа могутності Fiddler, то, за що він ніжно і щиро любимо. Вони знаходяться в верхньому меню.

Є кілька стандартних правил, але, що найважливіше, нові правила можна задавати через пункт "Customize Rules" (або Fiddler Script Editor).

При настанні будь-якої події з великого списку, Fiddler викликає відповідний обробник з правил. Наприклад, onBeforeRequest, onShutdown.

Можна маніпулювати заголовками, запитом, змінювати ширину каналу, управляти виведенням запиту в Fiddler і так далі і тому подібне

Мова для завдання правил - JScript.NET, що по-перше, дає зручність розробки, а по-друге - інтеграцію з іншими компонентами Windows.

Наприклад, на JScript.NET можна написати логирование певного виду запитів в MSSQL або Access. Сам я не пробував, але розробник Fiddler говорить про можливість завдання правил взагалі на будь-якій мові .NET.

Там же, в правилах, задаються і пункти меню Rules.

В меню Rules -> Automatic Breakpoints можна включити автоматичне переривання Fiddler при обробці запиту.

Після цього, якщо зробити запит в браузері, підключеному до Fiddler, то його виконання зависне, а в лівому віконці Fiddler цей запит буде відзначений спеціальним значком.

Це показано на скріншоті нижче, і, до речі, внизу-праворуч режим брейкпойнтов відзначається спец. значком.

Якщо вибрати такий підвішеному запит мишкою, то у вкладці SessionInspector їм можна управляти: змінювати сам запит і відповідь сервера (після Break on Response, коли сервер вже відповів).

Задавати переривання на запитах певного виду можна через правила.

Більш ранні версії Fiddler використовували для налагодження HTTPS спеціальну програму RPASpy. Починаючи з 2.1, Fiddler благополучно обходиться без цієї програми, досить встановити відповідні настройки в Fiddler options.

Скріптуемий оцінний проксі fiddler

Схожі статті