Regex 如何配置Fiddler';s的自动应答器;“地图”;文件夹的主机?
我已经在使用Fiddler截取特定远程文件的请求,而我正在处理它们(这样我就可以在本地调整它们,而不必接触发布的内容) i、 我使用很多这样的规则Regex 如何配置Fiddler';s的自动应答器;“地图”;文件夹的主机?,regex,proxy,fiddler,Regex,Proxy,Fiddler,我已经在使用Fiddler截取特定远程文件的请求,而我正在处理它们(这样我就可以在本地调整它们,而不必接触发布的内容) i、 我使用很多这样的规则 match: regex:(?insx).+/some_file([?a-z0-9-=&]+\.)* respond: c:\somepath\some_file match: regex:http://some_dummy_domain/(anything)?(anything) respond: c:\somepath\
match: regex:(?insx).+/some_file([?a-z0-9-=&]+\.)*
respond: c:\somepath\some_file
match: regex:http://some_dummy_domain/(anything)?(anything)
respond: c:\somepath\(anything)?(anything)
这很好用
我现在想做的是更进一步,用这样的东西
match: regex:(?insx).+/some_file([?a-z0-9-=&]+\.)*
respond: c:\somepath\some_file
match: regex:http://some_dummy_domain/(anything)?(anything)
respond: c:\somepath\(anything)?(anything)
或者,在纯文本中
拦截对“some\u dummy\u domain”的任何http请求,进入“c:\somepath”并获取与最初请求的路径和名称相同的文件。查询字符串应该通过
需要进一步澄清的一些场景:
http://some_domain/somefile --> c:\somepath\somefile
http://some_domain/path1/somefile --> c:\somepath\path1\somefile
http://some_domain/path1/somefile?querystring --> c:\somepath\path1\somefile?querystring
我试图利用我已经拥有的:
match: regex:(?insx).+//some_dummy_domain/([?a-z0-9-=&]+\.)*
respond: ...
基本上,我在请求中寻找//一些虚拟域//
。测试时,这似乎匹配正确,但我不知道如何响应
Fiddler可以在响应中使用匹配项吗?我如何正确设置
我试图回答c:\somepath\$1
,但Fiddler似乎一字不差地对待它:
match: regex:(?insx).+//some_domain/([?a-z0-9-=&]+\.)*
respond: c:\somepath\$1
request: http://some_domain/index.html
response: c:\somepath\$1html <-----------
match:regex:(?insx)。+//some_域/([?a-z0-9-=&]+\)*
响应:c:\somepath\$1
请求:http://some_domain/index.html
回答:c:\somepath\$1html问题是在表达式前面使用了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,以便将包含example.com
的所有URL作为URL参数传递到proxy.webdbg.com
上的页面
匹配文本:REGEX:(?insx)。+/assets/(?'fname'[^?]*).*
操作文本C:\src\${fname}
…映射http://example.com/assets/img/1.png?兔子
toC:\src\img\1.png
您是否尝试过regex反向引用语法,如\1
,$1
等?@lucastrezesniewski我尝试过,我忘了提到它。修正了问题。啊,我明白了,我在R-ingTFM考试失败了。从我上次的匹配中省略n
成功了。