使用WebRequest或WebBrowser控件在C#中保持网站会话存活?

时间:2013-04-20 01:36:32

标签: c# session

我正在尝试使用WebRequest或WebBrowser控件保持会话处于活动状态。 它可以在一些网站上运行而没有问题,但是一个特定的网站在30分钟之后就让我退出。

我目前所做的是使用WebBrowser控件中的NavigateTo函数以随机间隔(1-10分钟)请求其中一个网站页面。网站是验证码登录,所以我首先要求用户登录,然后我获取cookie并将它们用于我的WebRequest请求,我重复使用WebBrowser控件来保持网站的活力(因此WebBrowser和WebRequest客户端共享相同的cookie)。

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

1 个答案:

答案 0 :(得分:0)

通常,您无法对会话超时做任何事情,因为它们既是客户端,也是服务器端,或者只是服务器端。但是,如果你很幸运,有问题的网站依赖于cookie超时,这是客户端的。如果是这种情况,您可以使用HttpCookie.Expires

这可能会阻止它过期:

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