跪求——带验证码的外域登陆问题
请回答的朋友仔细看完
A:网站是俺的网站。
B:是另一个代验证码登陆的网站
做法
第一步:访问B网站获得相应的cookie
HttpWebRequest request = WebRequest.Create("http://www.b.cn/index.jsp") as HttpWebRequest;
//获取request信息
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
//根据request信息获取response
string cookie = response.Headers["Set-Cookie"].Split(';')[0];
//根据response获得相应的cookies
第二步:根据cookie去请求相应的验证码信息
WebClient _Client = new WebClient();
//建立新的请求
_Client.Headers.Add("Cookie", cookie);
//将新的请求添加cookies头
byte[] _ImageBytes = _Client.DownloadData("http://www.b.cn/GetCode.jsp");
//获取图片字节流
第三步:登陆B网站并跳转到B网站。
我不知道该怎么做了。
<form action="http://www.b.cn/login.jsp" method="post">
<input type="text" name="userid" />
<input type="text" name="userkey" />
<input type="text" name="verifycode" />
<input type="submit" value="submit" />
</form>
如果像上面那样的话,对于B网站又是一个新的session。验证码肯定错误。
Stream outStream = request.GetRequestStream();
outStream.Write(data, 0, data.Length);
outStream.Close();
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Stream inStream = response.GetResponseStream();
这样获得的是B网站登陆后的信息,这不是我想要的。我想要的就是直接登陆B网站。
我已经发了两个帖子求助。可惜每次回答的人估计都没看懂我的要求,很想当然的回答
所以请各位哥哥姐姐们帮俺考虑考虑到底该如何完成
我要的是直接登陆到B网站。。跪谢!