c# - UTF8 编码 C# Webrequest

标签 c# post utf-8 httpwebrequest webrequest

我正在尝试发出网络请求并发送希伯来语的帖子数据 但服务器端得到它就像“??????”而不是希伯来语。

    WebRequest request = WebRequest.Create(MyserverClient.Url + Constants.TaskUpdatePropertyURL);
((HttpWebRequest)request).AllowAutoRedirect = false;
((HttpWebRequest)request).KeepAlive = true;

request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded;";
request.Headers.Add("Pragma: no-cache");
request.Headers.Add(string.Format("Cookie: {0}", Client.phpId));
    request.Headers.Add(string.Format("requesttoken: {0}", requestToken));

    string postData = "Some Non-english text";      
    using (Stream dataStream = request.GetRequestStream())
{
    byte[] byteArray = Encoding.UTF8.GetBytes(postData);                
    dataStream.Write(byteArray, 0, byteArray.Length);               
    dataStream.Close();
}

    try{
     HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                // Get the stream containing content returned by the server.
         Stream dataStream2 = response.GetResponseStream ();
                // Open the stream using a StreamReader for easy access.
        StreamReader reader = new StreamReader (dataStream2);
                // Read the content. 
        responseFromServer = reader.ReadToEnd ();
    }
 return responseFromServer;

        } 

正如我所说,对于非英语服务器,服务器获取的帖子数据为“???? -??????????????”但我应该是“一些非英文文本” 有什么建议吗??

最佳答案

尝试这样的事情:

StreamReader readStream = new StreamReader (receiveStream, Encoding.UTF8);

关于c# - UTF8 编码 C# Webrequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19475634/

相关文章:

c# - 具有未指定类型的泛型类的数组

database - 为什么 qry.post 以异步方式执行?

php - $_Post Large Fieldset - 放入数组的简单方法

php - tinymce 的 UTF-8 问题?

java - JDBC 中古怪的 latin1 到 UTF8 的转换

c# - 优化托管到 native 调用

c# - 在托管代码和非托管代码之间传递结构

c# - 如何在 ASP.NET 中生成 KML 文件?

javascript - 在 Node js 服务器上提供 XMLHttp POST 请求

php - UTF-8贯穿始终