作者martone (Krel)
看板C_Sharp
標題[問題] 採用POST方式傳值,SERVER依然收到亂碼
時間Thu Sep 25 17:29:52 2008
public void HttpPost(string uri, string parameters)
{
Encoding encode = Encoding.GetEncoding("utf-8");
WebRequest req = WebRequest.Create(uri);
string postData = "q=httprequest&my=123&test=中文";
byte[] bytes = encode.GetBytes(postData);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = bytes.Length;
Stream sendStream = req.GetRequestStream();
sendStream.Write(bytes, 0, bytes.Length);
sendStream.Close();
}
已經使用
Encoding 來幫助轉碼,但SERVER端仍只會收到 "?"
SERVER端採用SERVLET,將接收值印在CONSOLE。而值卻只是???????
請問是否所寫的方法有錯呢?
而在C#撰寫行動裝置中是否沒有system.web呢? 手動add時,只有system.web.service
(是寫在行動裝置中,使用vs2008)
謝謝各位^^"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.170.5.102
→ MRjk:code看起來沒錯 是接收端的問題? 09/25 17:33
推 teyou:postData 是不是要先經過 HttpUtility.UrlEncode() ? 09/25 20:35
→ martone:是SERVLET的問題,已解決 謝謝各位 09/25 21:38
→ MRjk:2樓 我本來也以為是這樣 後來發現encode.getbytes就可以 09/25 22:01