使用UTF8的WebRequest

时间:2012-05-17 16:33:40

标签: c# webrequest

当使用WebRequest和非英语数据时,我看到一些不一致(来自服务器)。

String strData = "zéro";
// String strData = "zero"; // this works
request = WebRequest.Create("http://example.com");
request.Method = strMethod;
byte[] byteArray = Encoding.UTF8.GetBytes(strData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteArray.Length;
((HttpWebRequest)request).UserAgent = "Sailthru API C# Client";
Stream dataStream = request.GetRequestStream();
// Write the data to the request stream.
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();

只有在使用C#时才会发生这种情况,而java和PHP的工作正常,所以我认为它可能与我编码数据的方式有关。

有什么建议我做错了吗?

提前做出来的。

1 个答案:

答案 0 :(得分:0)

应为application/x-www-form-urlencoded;charset=utf-8,您的回复也应为content-type: x;charset=utf-8