C# post 如何传多个值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# post 如何传多个值相关的知识,希望对你有一定的参考价值。
想写个自动登录网页的小程序 程序是用C#写 网页时ASP写的用POST提交数据 两天过去了 却没有一点进展 原因是我传两个以上的值给网页(username,pwd,type),但网页却只能接受一个值 网页时第三方做的不能修改,望大虾指点一二。以下是我的代码:
CookieContainer cc = new CookieContainer();
public String OpenURL(String strUrl, String strParm)
strParm="name=" + textBox1.Text.ToString() + " & password=" + textBox2.Text.ToString()+"";
Encoding encode = System.Text.Encoding.Default;
byte[] arrB = encode.GetBytes(strParm);
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(strUrl);
myReq.Method = "POST" ;
myReq.ContentType = "application/x-www-form-urlencoded";
myReq.ContentLength = arrB.Length;
Stream outStream = myReq.GetRequestStream();
myReq.CookieContainer = cc;
outStream.Write(arrB,0,arrB.Length);
outStream.Close();
HttpWebResponse response = (HttpWebResponse)myReq.GetResponse();
cc.Add(response.Cookies);
Stream stream = response.GetResponseStream();
string shtml = new StreamReader(stream, System.Text.Encoding.Default).ReadToEnd();
this.textBox3.Text = sHtml.ToString();
response.Close();
return sHtml;
代码是COPY的 有些看不懂 如果大虾您有空 麻烦也给写点注释吧!
例如string str= username+"|"+ pwd+"|"+ type
传值例如:xxx.aspx?str
传到目标页面接受strReq=Request.QueryString["str"].ToString();
对象获取到放在一个string [] str1=strReq.spilt(‘|’); username=str[0].tostring();
pwd=str[1].tostring();
type=str[2].tostring(); 参考技术B string username = System.Web.HttpUtility.UrlEncode(textBox1.Text);
string strParm = String.Format("username=0&pwd=1&type=2", username, pwd, type);
username, pwd, type的值是需要进行UrlEncode的
再就是,字符编码要和接收的页面一致.
byte[] arrB = Encoding.GetEncoding("GB2312").GetBytes(strParm);
c# webapi post多个参数
参考技术A 可以的,一般post可带多个参数,还不限制长度,一般用来传重要的数据以上是关于C# post 如何传多个值的主要内容,如果未能解决你的问题,请参考以下文章
asp.net(vs2008 c# 中) 如何在跳转的页面传递参数?