在向服务器提交数据时,网络浏览器使用哪种网址编码?
使用我的应用程序我使用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,
答案 0 :(得分:1)
如果要在url参数中包含URL保留的charatcer(?,&等),通常只需要URLEncode。