gpt4 book ai didi

c# - 想像Fiddler一样得到http响应结果

转载 作者:行者123 更新时间:2023-11-30 22:28:12 25 4
gpt4 key购买 nike

当我从我的应用程序启动网页时,我正在尝试获得与 Fiddler 获得的相同类型的结果。下面是我正在使用的代码和我得到的结果。我仅将 google.com 用作示例。

我需要在我的代码中修改什么才能获得我想要的结果,或者我是否需要一种完全不同的方法?

感谢您的帮助。

我的代码:

 // create the HttpWebRequest object
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create("http://www.google.com");

// get the response object which has the header info, using the GetResponse method
var objResults = objRequest.GetResponse();

// get the header count
int intCount = objResults.Headers.Count;

// loop through the results object
for (int i = 0; i < intCount; i++)
{
string strKey = objResults.Headers.GetKey(i);
string strValue = objResults.Headers.Get(i);


lblResults.Text += strKey + "<br />" + strValue + "</br /><br />";
}

我的结果:

缓存控制私有(private)的,最大年龄=0

内容类型文本/html;字符集=ISO-8859-1

日期2012 年 6 月 5 日星期二 17:40:38 GMT

过期-1

设置 CookiePREF=ID=526197b0260fd361:FF=0:TM=1338918038:LM=1338918038:S=gefqgwkuzuPJlO3G;过期 = 2014 年 6 月 5 日星期四 17:40:38 GMT;路径=/;域=.google.com,NID=60=CJbpzMe6uTKf58ty7rysqUFTW6GnsQHZ-Uat_cFf1AuayffFtJoFQSIwT5oSQKqQp5PSIYoYtBf_8oSGh_Xsk1YtE7Z834Qwn0A4Sw3ruVCA9v3f_UDYH4b4fAloFJbW; expires=星期三,2012 年 12 月 5 日 17:40:38 GMT;路径=/;域名=.google.com;仅限HTTP

点对点CP="这不是 P3P 政策!有关更多信息,请参阅 http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657。"

服务器导航系统

X-XSS-保护1;模式= block

X 框架选项同源

传输编码分块

========================= fiddler 结果:

Result Protocol Host URL Body Caching Content-Type Process Comments Custom

1 304 HTTP www.rolandgarros.com/images/misc/weather/P8.gif 0 max-age=700 到期时间:2012 年 6 月 5 日星期二 17:53:40 GMT image/gif firefox:5456
2 200 HTTP www.google.com/23,697 private, max-age=0 Expires: -1 text/html;字符集=UTF-8 Chrome :2324
3 304 HTTP www.rolandgarros.com/images/misc/weather/P9.gif 0 max-age=700 到期时间:2012 年 6 月 5 日星期二 17:53:57 GMT image/gif firefox:5456
4 200 HTTP 隧道到 translate.googleapis.com:443 0 chrome:2324
5 200 HTTP www.google.com

最佳答案

区别在于 Fiddler 实际上记录的是整个 session ,而不仅仅是单个 HTTP 请求。

如果用户加载 Google.com,响应通常是包含图像、脚本文件、CSS 文件等的 HTML 文档。然后您的浏览器将为这些资源中的每一个资源发起一个新的 HTTP 请求。随着 Fiddler 的运行,它会跟踪每个 HTTP 请求并吐出结果代码和有关 session 的其他信息。

使用上面的 C# 代码,您只发起一个 HTTP 请求,因此您只有一个结果的信息。

您最好编写一个浏览器插件。否则,您必须解析 HTML 响应并从该文档加载其他资源。

如果您确实需要使用 C# 代码执行此操作,您可能可以使用 HTML Agility Pack 解析文档然后在 HTML 中寻找其他资源来模拟浏览器。还有嵌入式浏览器,例如 Awesomium ,这可能会有所帮助。

关于c# - 想像Fiddler一样得到http响应结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10902618/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com