2012-06-22 41 views
0

将数据提交给服务器时,Web浏览器使用哪种网址编码? 与我的应用程序我使用HttpUtility.UrlEncode(string data) ,但没有得到结果,因为我得到的网页浏览器。网页浏览器使用哪些网址编码?

我的申请提交一些文本数据到论坛。

当我使用网络浏览器(Google Chrome)提交数据时,我可以看到提交给服务器的确切文本,但是当我使用我的应用程序提交时,显示某些字符不同。

那么这是否需要提交任何数据到服务器必须进行网址编码?

---编辑---

 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, 
+1

你能告诉我们你正在使用的代码 –

+1

什么?只有一种URL编码。 – BoltClock

+0

这已经在这里回答:http://stackoverflow.com/questions/1812473/difference-between-url-encode-and-html-encode – Nathan

回答

1

,如果你想在一个URL参数中的URL保留charatcer(?,&等),你通常只需要URLEncode的。

+0

发送这样的数据 RUNTIME ............:2h:13m:15s RELEASE SIZE ......:16,2GB VIDEO CODEC ...... .: x264,2pass 具有一些空间特征。 – Prince123

+0

没有什么东西在我身上跳出来,那说这是一个相当丑陋的网址?发送类似?runtime = 133&releasesize = 16.2&code = x264的代码会更有意义吗?其中133 =(2 * 60)+13。 – Liam