首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpWebRequest登录

HttpWebRequest登录
EN

Stack Overflow用户
提问于 2011-05-09 23:51:24
回答 1查看 712关注 0票数 1

我尝试登录到一个https网站,当我运行代码时,我没有得到一个错误,但我也没有登录,所以我想知道问题是什么,我对http网站使用了相同的代码和技术(使用明显不同的postdata字符串),它让我登录到了下面的代码:

代码语言:javascript
复制
string postData = "JAVASCRIPT_ON=userName=XXXX&password=XXX&loginAction=Logon";
            CookieContainer tempCookies = new CookieContainer();
            UTF8Encoding encoding = new UTF8Encoding();
            Byte[] byteData = encoding.GetBytes(postData);
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://direct.gov.mb.ca/ppr/actions/loginDispatcher");
            request.Method = "POST";
            request.KeepAlive = true;
            request.CookieContainer = tempCookies;
            request.ContentType = "application/x-www-form-urlencoded";
            request.Referer = "https://direct.gov.mb.ca/ppr/jsps/login/login.jsp";
            request.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13";
            request.ContentLength = postData.Length;
            Stream requestStream = request.GetRequestStream();
            requestStream.Write(byteData, 0, byteData.Length);
            requestStream.Close();


        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        tempCookies.Add(response.Cookies);
        loginCookies = tempCookies;
EN

回答 1

Stack Overflow用户

发布于 2011-05-09 23:53:46

您应该将所有请求的CookieContainer属性设置为相同的实例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5939354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档