c# WebBrowserControl 在请求时使用修改的 cookie 进行导航

c# WebBrowserControl navigate with cookie modified when requested

我使用 httpclient 在网站上进行身份验证请求。我取回饼干作为结果。因此,在我想在 webbrowserControl 上显示带有 cookie 的网站页面以保持身份验证之后。所以我这样做了。

var cookieString = "Cookie: PrestaShop-a30a9934ef476d11b6cc3c983616e364=uA6Y3X32j91I9iluFZIRX3c";
            wbbWebBrowser.Navigate(iUrl, "",null, cookieString);  

然后通过 fiddler 我检查了请求,令人惊讶的是,cookie 值(在“=”之后)发生了变化....

Cookie: PrestaShop-a30a9934ef476d11b6cc3c983616e364=lIl7sfVtBj0qOmiMvtNBuQFrtZtwyyW

请问有什么问题吗?

我找到了。您必须在导航前清理 cookie。所以我通过这种方式清除:(确保您在属性项目中允许不安全代码)

 private unsafe void ClearCookies()
    {
        int option = (int)3;
        int* optionPtr = &option;

        bool success = InternetSetOption(0, 81, new IntPtr(optionPtr), sizeof(int));
    }

多亏了这个link: source