C#如何从GeckoWebBrowser控件获取Cookie [英] C# How to get cookies from GeckoWebBrowser control
问题描述
我使用导航的URL的GeckoWebBrowser控制。
它装载该页面时,实际上应该有饼干。
但是,如果我试图让饼干,我得到连页面加载一个空白文本。
I am using the GeckoWebBrowser control for navigate an URL. It actually should have cookies when that page is loaded. But if I tried to get the cookie, I get a blank text even the page is loaded.
GeckoWebBrowser m_Browser = ...
GeckoWebBrowser m_Browser = ...
// ...后导航。
串sCookie = m_Browser.Document.Cookie.ToString();
// ... after navigated. string sCookie = m_Browser.Document.Cookie.ToString();
有另一种方式来获得GeckoWebBrowser饼干?
请帮帮我。
谢谢
Is there another way to get the cookies from GeckoWebBrowser? Please help me. Thanks
推荐答案
这是验证用的 GeckoFX v29.0 。
var uri = new Uri(txtURL.Text);
//often cookies are stored on domain level, so ".google.com", not "www.google.com" (leading dot is important)
string host = uri.Host.Replace("www", "");
var cookies = CookieManager.GetCookiesFromHost(host);
string cookiesText = "";
while (cookies.MoveNext())
{
var c = cookies.Current;
cookiesText += c.Name + "=" + c.Value + ";";
}
此外Browser.Document.Cookie现在似乎更加可靠,但我避风港T测试它广泛。
Also Browser.Document.Cookie seems to be more reliable now, but I haven't tested it extensively.
这篇关于C#如何从GeckoWebBrowser控件获取Cookie的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!