作者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
1F:→ MRjk:code看起来没错 是接收端的问题? 09/25 17:33
2F:推 teyou:postData 是不是要先经过 HttpUtility.UrlEncode() ? 09/25 20:35
3F:→ martone:是SERVLET的问题,已解决 谢谢各位 09/25 21:38
4F:→ MRjk:2楼 我本来也以为是这样 後来发现encode.getbytes就可以 09/25 22:01