Как настроить автоответчик Fiddler для "привязки" хоста к папке?
Я уже использую Fiddler для перехвата запросов на определенные удаленные файлы во время работы над ними (поэтому я могу настроить их локально, не касаясь опубликованного содержимого).
То есть я использую много правил, подобных этому
match: regex:(?insx).+/some_file([?a-z0-9-=&]+.)*
respond: c:somepathsome_file
Это прекрасно работает.
То, что я хотел бы сделать сейчас, это сделать еще один шаг вперед, с чем-то вроде этого
match: regex:http://some_dummy_domain/(anything)?(anything)
respond: c:somepath(anything)?(anything)
Или, в обычном тексте,
Перехватить любой http-запрос к 'some_dummy_domain', зайти внутрь 'c:somepath - и хватай пистолет. файл с тем же путем и именем, которые были запрошены изначально. Строка запроса должна пройти через.
Некоторые сценарии для дальнейшего уточнения:
http://some_domain/somefile --> c:somepathsomefile
http://some_domain/path1/somefile --> c:somepathpath1somefile
http://some_domain/path1/somefile?querystring --> c:somepathpath1somefile?querystring
Я попытался использовать то, что у меня уже было:
match: regex:(?insx).+//some_dummy_domain/([?a-z0-9-=&]+.)*
respond: ...
В основном, я ищу //some_dummy_domain/ в запросах. Это, кажется, соответствует правильно при тестировании, но я не знаю, как реагировать.
Может ли скрипач использовать спички в ответах, и как я могу это правильно настроить ?
Я попытался ответить c:somepath$1 но скрипач, похоже, не понял. отнеситесь к этому дословно:
match: regex:(?insx).+//some_domain/([?a-z0-9-=&]+.)*
respond: c:somepath$1
request: http://some_domain/index.html
response: c:somepath$1html <-----------
2 ответ:
Проблема заключается в том, что вы используете
insxв начале выражения;nозначает, что вы хотите требовать явно именованные группы захвата, что означает, что группа$1не создается автоматически. Вы можете либо опуститьn, либо явно назвать группу захвата.Из книги скрипача:
Используйте замены регулярных выражений в тексте действия
Автоответчик Fiddler позволяет использовать замены групп регулярных выражений для отображения текста из условие соответствия в текст действия. Например, правило:
Текст Матча:
REGEX:.+/assets/(.*)
Текст Действия:http://example.com/mockup/$1...сопоставляет запрос для
http://example.com/assets/Test1.gifсhttp://example.com/mockup/Test1.gif.Следующее правило:
Текст Матча:
REGEX:.+example\.com.*Текст Действия:
http://proxy.webdbg.com/p.cgi?url=$0...перезаписывает входящий URL-адрес таким образом, что все URL-адреса, содержащие
example.com, передаются в качестве параметра URL на страницу наproxy.webdbg.com.Текст Матча:
REGEX:(?insx).+/assets/(?'fname'[^?]*).*Текст Действия
C:\src\${fname}...карты запрос на От
http://example.com/assets/img/1.png?bunniesдоC:\src\img\1.png.
Comments
<p>// Изменить значение заголовка с именем "Cache-Control" на значение " max-age=3600"</p>
<p>oSession.oResponse.headers["Cache-Control"] = "max-age=3600";</p>
<pre>
}</pre>
<p>Применил в Autorecponder. Подмены не происходит. Может не правильно составлена команда или может её надо ещё перекодировать, чтобы фиддлер понял задачу. Заранее благодарю за ответ.</p>