Fiddler:如何响应需要客户端证书的请求

4
我正在尝试爬取一个需要证书验证的网站。当你通过认证后,它会要求你提供用户名和密码。我想使用Fiddler来查看需要复制的内容。当我打开“捕获流量”并尝试访问该网站时,Internet Explorer显示“无法显示网页”。但是,当我关闭Fiddler并再次尝试访问该网站时,它会带我到登录页面。
我已经尝试了这个链接,并且尝试了所有方法(将其转换为.cer文件并拖到文件夹中,也尝试将代码复制粘贴到规则文件中以接受证书),但都没有成功。有人有其他想法吗?
我是否应该替换Fiddler根证书?或者有人可以建议任何解决方案吗?
1个回答

7

我解决了这个问题。万一有其他人遇到同样的问题,我在此提醒一下。代码中的 oSession 部分需要放在 OnBeforeRequest 行之后的第一行。我不记得它之前在哪里了,但它没起作用。例如:

 static function  OnBeforeRequest(oSession: Session) {
   oSession["https-Client-Certificate"]= "C:\\Yourcerfilelocation.cer"; 
 //I omitted the standard code

}

编辑: 在OnPeekAtRequestHeaders方法中使用OnBeforeRequest方法会更好。


1
实际上,你最好将这个放在 OnBeforeRequest 函数里面。 - EricLaw
1
@PhilipRego 我相信这是C#代码。在2013年,我使用Fiddler来找出请求内容,然后使用C#模拟该请求,包括证书等。我想要通过编程方式登录网站并每天从中下载文件。 - Mickey Sly

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接