定时查询银行余额的http请求有问题。。。。

ruolins ruolins 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
1:请求标头

这个refrer地址 是 https://mybank.icbc.com.cn/servlet/ICBCINBSCenterServlet?dse_sessionId=w41L8ABhFXGkM9UWrsQ7vgY

2:请求正文


3:要获取的响应数据。。。


public string GetPage(string SessionId)
{
// string requestUrl = "https://mybank.icbc.com.cn/servlet/ICBCINBSCenterServlet?SessionId=" + SessionId + "&cardNum=6222021714005347673&acctNum=&acctType=&acctCode=00000&cashSign=0&currType=001&operatorFlag=0&tranflag=1&tranCode=A00012";
string requestUrl = "https://mybank.icbc.com.cn/servlet/ICBCINBSCenterServlet?dse_sessionId=iCK8Z8Fz1NzaurOxWGy438U&SessionId=iCK8Z8Fz1NzaurOxWGy438U&cardNum=6222021714005767673&acctNum=1714122001102659453&acctType=011&acctCode=00000&cashSign=0&currType=001&operatorFlag=0&tranflag=1&tranCode=A00012";

Stream instream = null;
StreamReader sr = null;
HttpWebResponse response = null;
HttpWebRequest request = null;

try
{
// 设置参数
request = WebRequest.Create(requestUrl) as HttpWebRequest;
request.Method = "Post"; //请求方式GET或POST
request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
request.UserAgent= "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)";

request.Accept = "application/json, text/javascript, */*; q=0.01";
request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";

//发送请求并获取相应回应数据
response = request.GetResponse() as HttpWebResponse;

if (response.StatusCode == HttpStatusCode.OK)
{
//直到request.GetResponse()程序才开始向目标网页发送Post请求
instream = response.GetResponseStream();
sr = new StreamReader(instream, Encoding.Default);
//返回结果网页(josn)代码
string content = sr.ReadToEnd();
return content;
}
else
{

}
return "";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "服务连接", MessageBoxButtons.OK, MessageBoxIcon.Error);
return "";
}
}


上面是我的代码。这个方法返回的内容是
"\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n<HTML>\r\n<HEAD>\r\n<script type=\"text/javascript\">\r\n\tvar win8_pad_newflag = false;\r\n\ttry{\r\n\t\tif(typeof window.external.notify ===\"unknown\"){//win8 pad\r\n\t\t\twin8_pad_newflag = true;\r\n\t\t}\r\n\t}catch(e){\r\n\t}\r\n</script>\r\n</HEAD>\r\n<BODY>\r\n\r\n</BODY>\r\n\r\n <script language=\"JavaScript\">\r\n\r\n \t\tvar parentstr = \"parent\";\r\n\r\n \t\t//最多循环5次\r\n \t\tfor(var i=0;i<5;i++){\r\n \t\t\ttry{\r\n\t\t\t\tvar parentobj = eval(parentstr);\r\n\t\t\t\tparentobj.topFrame.logoffFlag=\"0\";break;\r\n \t\t}catch(Exception){\r\n \t\t\tparentstr = \"parent.\" + parentstr ;\r\n \t\t\tcontinue;\r\n \t\t}\r\n \t\t}\r\n \r\n\t\r\n \tvar iswinpadFlag=false;\r\n\t\ttry{\r\n\t\t\tiswinpadFlag=parent.WINPADFLAGforSessionerror;\r\n \t\t}catch(Exception){\r\n \t\t\tiswinpadFlag=false;\r\n \t\t}\r\n\t\tiswinpadFlag = win8_pad_newflag==true?win8_pad_newflag:iswinpadFlag;\r\n\t\tif(iswinpadFlag){\r\n\t\t\t//此也没有退出提示,所以统一跳至/icbc/coolpad/icbcerror.jsp处理\r\n\t\t\twindow.location.href=\"/icbc/coolpad/sessionerror.jsp?dse_sessionId=iCK8Z8Fz1NzaurOxWGy438U&logoffstat=0\";\r\n \t\t\t\t\t/*\t\r\n\t\t\ttry{\tparent.logoffFlag=0;\r\n\t \t\t\t\tparent.unloadpage();//winpad在此处主动触发,之后由unloadpage方法跳转至客户端。\r\n\t \t\t}catch(Exception){\r\n\t \t\t\r\n\t \t\t}\r\n\t \t\t*/\r\n\t\t}else{\r\n\t \ttop.location.href=\"/icbc/perbank/icbcerror.jsp?dse_sessionId=iCK8Z8Fz1NzaurOxWGy438U\";\r\n\t }\r\n \r\n \r\n</script>\r\n\r\n\r\n\r\n</HTML>\r\n"


但是我想要获取的是上面【3】返回的内容。。。。而不是这个数据,不知道是什么原因。。。。
请求的url 我是用请求标头+请求正文构造的。。。。。不知道是不是这里有问题。。。。求大神指点。。。
...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
ruolins
C# 111,129 成员 642,540 内容