使用httprequest自动登录https网站,始终返回的是登录页面,有高手能看下么

问题描述

stringhtml="";HttpWebResponseresponse=null;this.RequestUri=newUri(url);HttpWebRequestrequest=WebRequest.Create(this.RequestUri)asHttpWebRequest;try{if(url.StartsWith("https",StringComparison.OrdinalIgnoreCase)){ServicePointManager.ServerCertificateValidationCallback=newRemoteCertificateValidationCallback(CheckValidationResult);request=WebRequest.Create(url)asHttpWebRequest;}else{request=WebRequest.Create(url)asHttpWebRequest;}request.Method="POST";request.UserAgent="Mozilla/5.0(WindowsNT6.1;WOW64;rv:36.0)Gecko/20100101Firefox/36.0";request.Host="www.amazon.com";request.Accept="text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";request.KeepAlive=true;request.Headers["Accept-Language"]="zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3";request.ContentType="application/x-www-form-urlencoded";request.Headers["Accept-Language"]="gzip,deflate";request.Referer="https://www.amazon.com/ap/signin?_encoding=UTF8&openid.assoc_handle=usflex&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.mode=checkid_setup&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.ns.pape=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fpape%2F1.0&openid.pape.max_auth_age=0&openid.return_to=https%3A%2F%2Fwww.amazon.com%2Fgp%2Fyourstore%2Fhome%3Fie%3DUTF8%26action%3Dsign-out%26path%3D%252Fgp%252Fyourstore%252Fhome%26ref_%3Dnav_youraccount_signout%26signIn%3D1%26useRedirectOnSuccess%3D1";stringpostData="appActionToken=6j2Bf3fAi9L1j0dnAP1oI58HktaxUj3D&appAction=SIGNIN&openid.pape.max_auth_age=ape%3AMA%3D%3D&openid.ns=ape%3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvYXV0aC8yLjA%3D&openid.ns.pape=ape%3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvZXh0ZW5zaW9ucy9wYXBlLzEuMA%3D%3D&prevRID=ape%3AMEdQNzBSMk1ZRThWRkUxN1ZXWjc%3D&pageId=ape%3AdXNmbGV4&openid.identity=ape%3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvYXV0aC8yLjAvaWRlbnRpZmllcl9zZWxlY3Q%3D&openid.claimed_id=ape%3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvYXV0aC8yLjAvaWRlbnRpZmllcl9zZWxlY3Q%3D&openid.mode=ape%3AY2hlY2tpZF9zZXR1cA%3D%3D&openid.assoc_handle=ape%3AdXNmbGV4&openid.return_to=ape%3AaHR0cHM6Ly93d3cuYW1hem9uLmNvbS9ncC95b3Vyc3RvcmUvaG9tZT9pZT1VVEY4JnJlZl89bmF2X3lhX3NpZ25pbg%3D%3D&email=yhyinhu@163.com&create=0&password=yh91011023&metadata1=EPdH9iurGItrD1w6AJhpX9gIJdbrc0qynuTiUDlDELuX4HcwRYsi%2BQwXOIrEONQdfE9ByIMdf84wqIP3Oh%2FPKUMQKFSTf0%2FqYHm1xB4JHWOAh%2B%2Fm%2FTvG52yi6yDgld2R6oymdegOosADGruRsHR7MMAWEaakUVRZDjA8wctbIMUZU6tKTQCqgWHxo9AH%2F3d6u3Tz86Wi5hY6T4v1X2cR7xpJqLCPbaIGhDBDcKFlOEBP0Nm8DVxb2zUM%2FK7XWc%2Fx5yLJMaXztRSQcJRrm3yOzW0B%2By5TgnJljadRNOmnktwBjQhwduDCB%2BisGHVr1E8A3BXNb3gPFamVOtJAEgEt8jhpYiZMCKOmEPU3sKNXfSvkG3LUrjmKZP01UzbQq1zA6uyBCs9MyQ6y8VJwhE8ae2orM%2BbYIDGF%2FXkZfDqp%2Fo9z2w%2FdrE4x%2BVn0RYbGPIJLn%2FRrXCMKiz07OrvpnAay4djcPAx31vZaT2g6nrciecgXFxQadIwAyfGulaZP50PtwhAFkr76XVZB3DhZyv%2ByBDioHiFxiMJ8E3ceABary1drPIehK8QsPISLJ0cDSHvgdJnixlHRxQEUrgpl4a3PPxszgPhgdqgjDwiJ737Ah74TusKL%2B56mc%2Bra6WroBJ9sBuT2BbnOi8fLX0SniggLZRmR2X40xWA8WWvDQrTnnZC1K1s1mxBSRSSyATy%2FoBJoRS%2FqGfxy%2FTZUUWWF4A0D7IWX3Yu16TwhObRn4wVRbLdVi3d%2BWDlydCE1k%2BqGK%2FXZ01aQ1Jdhtu5aPZx%2B0lqcVzMOPEkcbAuZM49mmK695KFt55vlu%2FLs7mM3mQJ6sWdJtYWA7LhhScK84mUaJjC6aA2f7JoUCGAFzF52x6CtE%2F3cMMKY0CGXdu00SRGpCT2vnEaBDeJ6%2Fms4ihiRCPA36odmgu4BvbhnOqXler55RUggEY58nD9OtCGlTvdB7Gk6Vji4Xmgc8wA%3D";EncodingmyEncoding=Encoding.UTF8;//myEncoding=Encoding.Unicode;//myEncoding=Encoding.ASCII;//myEncoding=Encoding.Default;byte[]byteArray=myEncoding.GetBytes(strPostData.ToString().TrimEnd('&'));byte[]buffer=myEncoding.GetBytes(postData);intaa=buffer.Length;request.ContentLength=buffer.Length;request.GetRequestStream().Write(buffer,0,buffer.Length);HttpWebResponsewresp=(HttpWebResponse)request.GetResponse();response=(HttpWebResponse)request.GetResponse();stringstrHtml="";stringcharset=response.CharacterSet;Encodingee=Encoding.UTF8;try{if(charset.Length>0&&!charset.Contains("ISO"))ee=Encoding.GetEncoding(charset);}catch{ee=Encoding.Default;}if(response.ContentEncoding.ToLower().Contains("gzip")){using(GZipStreamstream=newGZipStream(response.GetResponseStream(),CompressionMode.Decompress)){using(StreamReaderreader=newStreamReader(stream,ee)){strHtml=reader.ReadToEnd();}}}elseif(response.ContentEncoding.ToLower().Contains("deflate")){using(DeflateStreamstream=newDeflateStream(response.GetResponseStream(),CompressionMode.Decompress)){using(StreamReaderreader=newStreamReader(stream,ee)){strHtml=reader.ReadToEnd();}}}else{using(Streamstream=response.GetResponseStream()){using(StreamReaderreader=newStreamReader(stream,ee)){strHtml=reader.ReadToEnd();}}}returnstrHtml;}catch(Exceptionhe){stringh=he.Message;return"";}以上postdata参数是使用httpwatch获得的,为什么返回标识符是200(OK),取得的html代码是登录页面,是因为每次重新登录以后的参数都要重新读取么?而且返回的header头中没有local重定向,应该是登录不成功的

解决方案

解决方案二:
跟我遇到的问题一样啊貌似现在灌水的人多了技术的就少了http://bbs.csdn.net/topics/391000335
解决方案三:
参数应该是动态的,不能直接写在代码里面吧
解决方案四:
cookie没传

时间: 2024-10-03 11:37:09

使用httprequest自动登录https网站,始终返回的是登录页面,有高手能看下么的相关文章

jvm-tomcat自动挂掉,在tomcat/bin/hs_err_pid4884.log如下,请高手帮忙看下。

问题描述 tomcat自动挂掉,在tomcat/bin/hs_err_pid4884.log如下,请高手帮忙看下. # A fatal error has been detected by the Java Runtime Environment: # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c95a1db, pid=5424, tid=2752 # JRE version: 6.0_45-b06 Java VM: Java HotSpo

WordPress修改登录或注销后返回之前访问的页面

首先,我们获取当前访问的页面地址: $url_this = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"]; 然后在登录和登出的函数中添加该地址作为参数: //登录<?php echo wp_login_url($url_this); ?>  //登出<?php echo wp_logout_url($url_this); ?> 这样一来,登录或登出后都会返回之前访问的页面. 如果你使用后台默认

c#利用upnp做端口映射成功了,但始终没法连接,哪位高手帮看下代码?

问题描述 c#利用upnp做端口映射成功了,但始终没法连接,哪位高手帮看下代码?这个是网上的代码,如下:目前有2个问题:1.mappings这个值经常为null,我windows7防火墙已经关闭,路由器upnp也开启了.但有时莫名其妙mappings不为null,于是就把映射信息添加到路由器了.如图2.当添加端口映射成功后,始终无法通信,如图:哪位高手指点一下,谢谢!!!!!!相关代码如下:usingSystem;usingSystem.Collections.Generic;usingSyst

网页A自动登录到网站B,可以实现吗?

问题描述 可以实现以下功能吗?打开一个网页A,然后自动登录到网站B.(知道网站B的用户名和密码) 解决方案 解决方案二:如果网站B没做登录来源限制的话,是可以的解决方案三:可以的解决方案四:你在A站点登陆的时候可以通过webService吧用户的信息发往B网站校验,如果通过,则就可以直接访问B网站解决方案五:请问楼上的各位大哥,怎么实现呢,能说一下吗?解决方案六:<scriptlanguage="javascript">functiondoSubmit(){document

用户登录我的网站,如何让webIM在页面自动登录?

问题描述 用户登录我的网站,如何让webIM在页面自动登录,必须把用户id和密码发到前端页面,然后再用js调用登录? 解决方案 首先登陆你的网站,然后在登陆环信,这个可以同步登陆的,登陆网址之后再登陆你为用户注册的环信id,不让用户感知就行解决方案二:用户token跟管理token不一样,获取用户tokenprivate $app_key = 'xxxxx#ddddd';    private $client_id = 'ccccccccc';    private $client_secret

网站 自动登录-怎么样写个程序,自动登录一个网站,然后填报表,然后发送

问题描述 怎么样写个程序,自动登录一个网站,然后填报表,然后发送 是这样的,平时工作里,我要登录一个网站做上班登记,要填一张表,最后发送,一天要登记四五回.用什么语言,什么方式,学什么知识,可以写一个程序,自动登录这个网站(我提供账号密码),然后完成填表,发送呢? 顺便我会c,c++,c#会一点,ruby懂,没用过rails,web开发没试过,谢谢. 一点头绪都没有,请致电,谢谢

c#中自动登录某网站,并使用登录帐户访问该网站其他网页时遇到的问题

问题描述 大家好,小弟新来的,在自己学习过程中遇到了一点问题,希望各位大哥大姐帮帮忙,不胜感激......我写了一个web网页,在设置自动登录某交友网站并自动在该网站浏览其他用户的博客等信息时,遇到了一个问题.问题是这样的:在首页写了个自动登录程序,可以实现.但是再登录该站其他用户的博客时却提示没有登录,我反复的测试,至今没有搞明白是为什么.呵呵,本人新手,学习c#也才2周左右,看了很多书,却不知道是哪个步骤错了,希望高手指导一下.那个交友网站是:www.dada.net我注册了一个用户,大家可

我的ASP网站登录后台,访问返回了200,怎么解决

问题描述 我的ASP网站登录后台,访问返回了200,怎么解决 解决方案 解决方案二:200是什么,如果是htrpstatuscode的话,200就是服务器正确响应了解决方案三:我可以加你的QQ私聊的吗解决方案四: 解决方案五:引用3楼zxb478846231的回复:这个看你的浏览器控制台输出的什么错误.

网站退出页及后续登录设计

写这个题目的原因是在于前天一个做社区的版主和我诉苦,说由于在社区需要经常切换马甲的缘故,经常会退出再重新登录,但是在现有的页面退出并重 新登录后,返回到的却是网站的首页,所以很苦恼,问我为什么不能在重新登录后返回到退出前所在页面.有鉴于此,我决定先研究下各大网站的退出页以及后续登 录设计. 淘宝(www.taobao.com):当前停留在A页面,为登录状态.点击"退出",返回到登录界面,如下图: 重新登录后,页面没用返回到淘宝首页,也没用返回到我退出前所在的A页面,而是来到"