C# 登录网站,第二次不返回cookie哈希键?

C# 登录网站,第二次不返回cookie哈希键?,c#,cookies,web,C#,Cookies,Web,我正在使用HttpWebRequest,POST方法以编程方式登录到一个网站。第一次通过HttpWebResponse成功进行身份验证时,我收到了cookie哈希密钥。第二次我做同样的动作时,我再也没有收到它了 这是否意味着我已经“登录”,或者它是否将我的会话存储在某个地方,我不太明白,如果有人可以解释,谢谢 这是我的代码,简单地说,运行两次,不要返回相同的cookie结果。 HttpWebRequest http = (HttpWebRequest)WebRequest.Cre

我正在使用HttpWebRequest,POST方法以编程方式登录到一个网站。第一次通过HttpWebResponse成功进行身份验证时,我收到了cookie哈希密钥。第二次我做同样的动作时,我再也没有收到它了

这是否意味着我已经“登录”,或者它是否将我的会话存储在某个地方,我不太明白,如果有人可以解释,谢谢

这是我的代码,简单地说,运行两次,不要返回相同的cookie结果。

        HttpWebRequest http = (HttpWebRequest)WebRequest.Create("URL");

        string cookie = string.Empty;
        string values = "vb_login_username=" + username + "&vb_login_password=" + password + "securitytoken=guest&" + "cookieuser=checked&" + "do=login";

        http.Method = "POST";
        http.ContentType = "application/x-www-form-urlencoded";
        http.ContentLength = values.Length;

        CookieContainer cookies = new CookieContainer();
        http.CookieContainer = cookies;

        ServicePointManager.Expect100Continue = false;


        using (var stream = new StreamWriter(http.GetRequestStream(), Encoding.ASCII))
        {
            stream.Write(values);
        }



        HttpWebResponse response = (HttpWebResponse)http.GetResponse();

        foreach (var c in response.Cookies)
        {
            cookie = cookie + c.ToString() + ";";
        }

        return cookie;

第二次,您可能在HTTP请求中自己提供了cookie,因此服务器不会再次向您发送cookie

使用IE中的开发工具(F12),在那里发送相同的请求,监视网络选项卡(您需要按绿色三角形开始监视)。您将能够深入了解并查看每个请求和响应中包含的内容

还有一些方法可以跟踪你的程序生成的网络流量,但是除了打开IE,还有更多的设置