向服务器提交数据时,Web 浏览器使用什么 url 编码?我使用我的应用程序,HttpUtility.UrlEncode(string data)
但没有像使用网络浏览器那样得到结果。
我的应用程序向论坛提交了一些文本数据。
当我使用网络浏览器(谷歌浏览器)提交数据时,我可以看到提交给服务器的确切文本,但是当我使用我的应用程序提交时,它显示了一些不同的字符。
那么向服务器提交任何数据是否必须进行 url 编码?
- -编辑 - -
data = HttpUtility.UrlEncode(textBox1.Text);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.CookieContainer = cookieContainer;
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5";
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
request.Headers.Add("Accept-Charset", "ISO-8859-2,utf-8;q=0.7,*;q=0.7");
request.Headers.Add("Accept-Encoding", "gzip, deflate");
request.Headers.Add("Accept-Language", "pl,en-us;q=0.7,en;q=0.3");
request.Method = "POST";
byte[] byteArray = new byte[256];
ASCIIEncoding ascii = new ASCIIEncoding();
byteArray = ascii.GetBytes(data);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteArray.Length;
Stream dataStream = request.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
textbox1 中的数据是这样的。
¦=¦=¦¦=¦=¦
RUNTIME………..: 2h:13m:15s
RELEASE SIZE……: 16,2GB
VIDEO CODEC…….: x264, 2pass,