首页新闻找找看学习计划

后台登录第三方网站

0
悬赏园豆:50 [已关闭问题] 关闭于 2012-11-28 18:53

通过A站点写一定的代码去登录B站点,我可以通过post去成功登录B站点,问题是我想登录成功后直接将主动权交给B站点,也就是说模拟B站点的登录,登录成功后的操作交给B站点(如转向main.aspx),现在是不知道如何转向登陆成功以后的主界面

 

 string Password = "000000";
            ASCIIEncoding encoding = new ASCIIEncoding();
            string postData = "txtUserName=" + UserName;//比如网页上输入框的名字为uname
            postData += ("&txtPwd=" + Password + "&action=submit&http_referer=");//密码输入框名字为password
            byte[] data = encoding.GetBytes(postData);
            HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://B/login.aspx");//登陆页地址
            myRequest.Method = "POST";
            myRequest.ContentType = "application/x-www-form-urlencoded";
            myRequest.ContentLength = data.Length;
            myRequest.KeepAlive = true;
            myRequest.AllowAutoRedirect = true;
            myRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)";
            Stream newStream = myRequest.GetRequestStream();
            newStream.Write(data, 0, data.Length);
            newStream.Close();


            myRequest.CookieContainer = cc;
            HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
            myResponse.Cookies = myRequest.CookieContainer.GetCookies(myRequest.RequestUri);
    

            StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
            string content = reader.ReadToEnd();//此处已经登陆成功返回的是第三方的主页面main.aspx的html,不能直接输出到页面,因为资源文件是属于B站点

liusaup的主页 liusaup | 初学一级 | 园豆:10
提问于:2012-10-09 11:34
< >
分享
所有回答(4)
0

当然不能把响应内容输出了,直接Redirect跳转不行吗?

向往-SONG | 园豆:4853 (老鸟四级) | 2012-10-09 12:35

直接Redirect 是不行的

支持(0) 反对(0) liusaup | 园豆:10 (初学一级) | 2012-10-09 16:28

@liusaup: 

哦,明白,那你不要在后台去模拟请求,而是用前台提交登陆B,完了再Redirect 

支持(0) 反对(0) 向往-SONG | 园豆:4853 (老鸟四级) | 2012-10-09 16:41
0

为什么不考虑把A站点设置个OpenID呢?

建议参考OAUTH协议,这样可以避免在A站点触及B站点的用户的帐号信息。

itaozi | 园豆:1053 (小虾三级) | 2012-10-09 15:48

你好,不知道是否有相关的博文可以参考

支持(0) 反对(0) liusaup | 园豆:10 (初学一级) | 2012-10-09 16:32

@liusaup:   OAuth授权说明  http://wiki.open.t.qq.com/index.php/OAuth%E6%8E%88%E6%9D%83%E8%AF%B4%E6%98%8E

支持(0) 反对(0) itaozi | 园豆:1053 (小虾三级) | 2012-10-10 13:03
0

关注,学习~

Philomena | 园豆:154 (初学一级) | 2012-10-09 17:14
0

用一个状态返回到客户端,成功够,就转到B网站,用js跳转

az235 | 园豆:8263 (大侠五级) | 2012-10-15 09:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册