|
最近公司做一个winfrom程序用苏飞的HttpHelper类POST登录一个网站,进到后台,,然后POST开通商铺,,但是在登录到后台然后开通商铺的时候遇到问题,那个网站登录进去正常,然后POST 到店铺开通的页面的时候,会遇到另外一个页面然后进行跳转才能进去开通商铺的。然后我查看了,COOKIE的变化,,他的ASP.NET_SessionId 在跳转前跟跳转后完全不一样,可能该网站完全是两个站点,然后通过中间页面去验证,我看了苏飞的301.302的跳转,试了试也不行。我就是没办法拿到中间页面跳转后的COOKIE。要是拿到才能去开通商铺。。因为开通商铺的页面需要 ASP.NET_SessionId 。。。。。。附上站点中间页面的跳转代码:下面是我写的
测试代码:
HttpHelper http = new HttpHelper();
//创建Httphelper参数对象
HttpItem item = new HttpItem()
{
URL = "http://usercenter.21csp.com.cn/admin/action/default.ashx",//URL必需项
Method = "post",//URL 可选项 默认为Get
PostEncoding = Encoding.GetEncoding("gb2312"),
ContentType = "application/x-www-form-urlencoded",//返回类型 可选项有默认值
Postdata = "cmd=UserLogin&UserName=kpyujaho4444&UserPwd=2612295&CCode=",//Post要发送的数据
};
//请求的返回值对象
HttpResult result = http.GetHtml(item);
//获取请求的Cookie
string cookie1 = result.Cookie;
//创建Httphelper参数对象
HttpItem item1 = new HttpItem()
{
URL = "http://b2b.21csp.com.cn/users/default.aspx",//URL 必需项
Method = "get",//URL 可选项 默认为Get
ContentType = "text/html",//返回类型 可选项有默认值
Allowautoredirect = false,//默认为False就是不根据重定向自动跳转
Cookie = cookie1
};
//请求的返回值对象
HttpResult result1 = http.GetHtml(item1);
//获取请求的Cookie
string cookie = result1.Cookie;
//获取302跳转URl
string redirectUrl = "http://b2b.21csp.com.cn/users/Summary.aspx?_=1535619121484";
item = new HttpItem()
{
URL = redirectUrl,//URL 必需项
Method = "get",//URL 可选项 默认为Get
ContentType = "text/html",//返回类型 可选项有默认值
Cookie = cookie
};
//请求的返回值对象
result = http.GetHtml(item);
//获取请请求的Html
string html = result.Html;
//获取请求的Cookie
cookie = result.Cookie;
|
-
|