我正在尝试显示一个需要先登录的网页。我正在使用 HttpWebRequest/Response 对象通过在后台收集会话和授权 cookie 来部分完成日志记录。
登录后,HttpWebResponse 对象返回给我我想通过 WebBrowser 控件向用户显示的 HTML 页面,因此我知道我有正确的会话/授权 cookie 集来访问所需的网页。
使用相关 cookie 正确填充 CookieContainer 后,我将 WebBrowser.DocumentText 属性设置为准备好的 HTML,其中包含对我要显示的网址的 GET 命令。浏览器弹出尝试呈现准备好的 HTML,我假设我收到与丢失 cookie 相关的服务器错误。
当我在调用 DocumentText 属性之前尝试设置 WebBrowser.Document.Cookie 时,在我看到的调试器中,Cookie 属性在尝试将其设置为“cookName=cookValue;cookName=”形式的字符串后始终保持为空烹饪价值;”。
为什么 Cookie 属性拒绝我传递的 cookie 字符串?这与 HttpOnly cookie 有关吗?我的 cookie 字符串格式不正确吗?我是否试图在错误的时间设置 Cookie 属性?
我进行了 WebBrowser.Navigate("about:blank") 调用,这似乎是正确初始化 WebBrowser 对象所必需的。