使用WebRequest或WebBrowser控件在c#中保持一个网站会话存活

本文关键字:一个 网站 会话 WebBrowser WebRequest 控件 使用 | 更新日期: 2023-09-27 18:10:01

我正在尝试使用WebRequest或WebBrowser控件保持会话存活。它在一些网站上没有问题,但一个特定的网站在30分钟后让我下线。

我目前所做的是使用WebBrowser控件中的NavigateTo功能以随机间隔(1-10分钟)请求其中一个网站页面。网站是captcha登录,所以我首先要求用户登录,然后我得到cookie并将它们用于我的WebRequest请求,我重用WebBrowser控件来保持网站的活跃(所以WebBrowser和WebRequest客户端共享相同的cookie)。

我正在寻找的想法,也许有人可以帮助我。提前感谢!

使用WebRequest或WebBrowser控件在c#中保持一个网站会话存活

通常,您对会话超时无能为力,因为它们同时存在于客户端和服务器端,或者仅仅存在于服务器端。但是,如果您幸运的话,所讨论的站点依赖于cookie超时,这是客户端。如果是这种情况,你可以试试HttpCookie.Expires.

这可能会防止它过期:

HttpCookie cookie = ...;
cookie.Expires = default(DateTime);