ken*_*ner 7 browser cookies wpf httpwebrequest cookiecontainer
有没有办法读取/写入WebBrowser控件使用的cookie?
我正在做这样的事......
string resultHtml;
HttpWebRequest request = CreateMyHttpWebRequest(); // fills http headers and stuff
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
{
resultHtml = sr.ReadToEnd();
}
WebBrowser browser = new WebBrowser();
browser.CookieContainer = request.CookieContainer; // i wish i could do this :(
browser.NavigateToString(resultHtml);
Run Code Online (Sandbox Code Playgroud)
关于WebBrowser
控件和cookie的一个可能令人困惑的事情是,乍一看,它通常看起来像你的应用程序获得一个单独的cookie存储.例如,如果您登录到存储持久cookie的站点以识别您,那么您是否从托管控件的应用程序内部登录该站点将与您是否通过Internet Explorer登录无关.
实际上,您甚至可以使用不同的身份登录.
然而,虽然可能很自然地得出结论,每个托管的应用程序WebBrowser
都有自己的cookie,事实上并非如此.只有两组cookie:在'低完整性'模式下使用的(默认情况下IE运行),另一组,这是你在一个普通应用程序中获得的WebBrowser
,也是什么如果你运行升级IE,你会得到的.
webbrowser控件使用WinInet进行网络连接,特别是使用InternetSetCookie(Ex)和InternetGetCookie(Ex)函数进行Cookie管理..Net中没有WinInet包装器,但您可以进行p调用.
归档时间: |
|
查看次数: |
11407 次 |
最近记录: |