我想知道如果采用POST方式传参这段代码该怎么改?

在 WinForm 用下面的方法可以打开页面并同时通过 GET 传参实现自动登录,

string s = "http://www.xxx.com/send.aspx?user=aaa&pass=bbb";
System.Diagnostics.Process.Start(s)

茅侃侃
浏览 100回答 1
1回答

MMMHUHU

可以用HttpWebRequest和HttpWebResponse或者WebRequest和WebResponse//调用方法Dictionary<string,&nbsp;string>&nbsp;postData&nbsp;=&nbsp;new&nbsp;Dictionary<string,&nbsp;string>();postData.Add("user",&nbsp;"aaa");postData.Add("pass",&nbsp;"bbb");&nbsp;GetPageByPost("http://www.xxx.com/send.aspx",&nbsp;postData,&nbsp;Encoding.UTF8);&nbsp;///&nbsp;<summary>///&nbsp;以&nbsp;Post&nbsp;方式提交网页数据,获得服务器返回的数据///&nbsp;</summary>///&nbsp;<param&nbsp;name="url">&nbsp;Url&nbsp;</param>///&nbsp;<param&nbsp;name="postData">Post&nbsp;数据</param>///&nbsp;<param&nbsp;name="encoder">网页编码</param>///&nbsp;<returns>服务器返回的数据</returns>public&nbsp;string&nbsp;GetPageByPost(string&nbsp;url,&nbsp;Dictionary<string,&nbsp;string>&nbsp;postData,&nbsp;Encoding&nbsp;encoder){&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;html&nbsp;=&nbsp;"";&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpWebRequest&nbsp;webReq&nbsp;=&nbsp;(HttpWebRequest)WebRequest.Create(url);&nbsp;&nbsp;&nbsp;&nbsp;webReq.Method&nbsp;=&nbsp;"POST";&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Stream&nbsp;reqStream&nbsp;=&nbsp;null;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(postData&nbsp;!=&nbsp;null&nbsp;&&&nbsp;postData.Count&nbsp;>&nbsp;0)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringBuilder&nbsp;sb&nbsp;=&nbsp;new&nbsp;StringBuilder();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;(KeyValuePair<string,&nbsp;string>&nbsp;kv&nbsp;in&nbsp;postData)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(HttpUtility.UrlEncode(kv.Key));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append("=");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(HttpUtility.UrlEncode(kv.Value));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append("&");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte[]&nbsp;data&nbsp;=&nbsp;Encoding.UTF8.GetBytes(sb.ToString().TrimEnd('&'));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;webReq.ContentType&nbsp;=&nbsp;ContentType;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;webReq.ContentLength&nbsp;=&nbsp;data.Length;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reqStream&nbsp;=&nbsp;webReq.GetRequestStream();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reqStream.Write(data,&nbsp;0,&nbsp;data.Length);&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpWebResponse&nbsp;webResp&nbsp;=&nbsp;(HttpWebResponse)webReq.GetResponse();&nbsp;&nbsp;&nbsp;&nbsp;Stream&nbsp;stream&nbsp;=&nbsp;webResp.GetResponseStream();&nbsp;&nbsp;&nbsp;&nbsp;StreamReader&nbsp;sr&nbsp;=&nbsp;new&nbsp;StreamReader(stream,&nbsp;encoder);&nbsp;&nbsp;&nbsp;&nbsp;html&nbsp;=&nbsp;sr.ReadToEnd();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sr.Close();&nbsp;&nbsp;&nbsp;&nbsp;stream.Close();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(reqStream&nbsp;!=&nbsp;null)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reqStream.Close();&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;html;}
打开App,查看更多内容
随时随地看视频慕课网APP