C# 在C语言中捕获cookie响应#

C# 在C语言中捕获cookie响应#,c#,.net,http,cookies,webbrowser-control,C#,.net,Http,Cookies,Webbrowser Control,使用C#中的Web浏览器控件或http请求,当网站创建cookie(或尝试创建cookie)时,是否有方法捕获和显示该cookie?是,cookie将在设置cookie标题中返回。您可以使用集合查看所有标题并读取Cookie,或者也可以使用集合为您包装它。当然,您可以使用诸如Fiddler或FireBug之类的工具来捕获和检查会话期间发送的请求和响应。我对Fiddler比较熟悉,所以我的答案和例子都是基于它的 例如,如果我登录到公司的OutlookWebAccess门户,我输入用户名和密码,OW

使用C#中的Web浏览器控件或http请求,当网站创建cookie(或尝试创建cookie)时,是否有方法捕获和显示该cookie?

是,cookie将在
设置cookie
标题中返回。您可以使用集合查看所有标题并读取Cookie,或者也可以使用集合为您包装它。

当然,您可以使用诸如Fiddler或FireBug之类的工具来捕获和检查会话期间发送的请求和响应。我对Fiddler比较熟悉,所以我的答案和例子都是基于它的

例如,如果我登录到公司的OutlookWebAccess门户,我输入用户名和密码,OWA客户端将向我的计算机写入会话cookie。如果我在登录时运行了Fiddler,我可以看到由于成功登录而将此cookie作为服务器响应的一部分写入:

**Cookies / Login**
  Set-Cookie: sessionid=d8ff0256-7339-4049-81c2-fae98f7c3ed5:0x409; path=/
如果有更多的cookies被发送下来,您将看到它们列在cookies组下

如果单击请求的资源(成功登录后进入的页面),然后单击Fiddler响应部分的Headers选项卡,我可以看到这些cookies


希望这有帮助

如果cookie在响应中设置了HttpOnly属性,则HttpWebResponse.Headers不会为您包装它。