[問題] 採用POST方式傳值,SERVER依然收到亂碼

看板C_Sharp作者 (Krel)時間17年前 (2008/09/25 17:29), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
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

09/25 17:33, , 1F
code看起來沒錯 是接收端的問題?
09/25 17:33, 1F

09/25 20:35, , 2F
postData 是不是要先經過 HttpUtility.UrlEncode() ?
09/25 20:35, 2F

09/25 21:38, , 3F
是SERVLET的問題,已解決 謝謝各位
09/25 21:38, 3F

09/25 22:01, , 4F
2樓 我本來也以為是這樣 後來發現encode.getbytes就可以
09/25 22:01, 4F
文章代碼(AID): #18sreHlr (C_Sharp)