美文网首页
C# 解决httplistener querystring 中文

C# 解决httplistener querystring 中文

作者: 遗失的美好灬 | 来源:发表于2021-05-13 10:36 被阅读0次

    解决httplistener querystring 中文乱码方案:

    在请求到达时候,获取Request.Url,返回get请求参数 键值对

        public class RequestHelper
        {
            public static Dictionary<string, string> EncodeQueryString(Uri uri)
            {
                var ret = new Dictionary<string, string>();
                var q = uri.Query;
                if (q.Length > 0)
                {
                    foreach (var p in q.Substring(1).Split('&'))
                    {
                        var s = p.Split(new char[] { '=' }, 2);
                        ret.Add(HttpUtility.UrlDecode(s[0]), HttpUtility.UrlDecode(s[1]));
                    }
                }
                return ret;
            }
        }
    

    解决返回json中文格式乱码:

    对中午json字符串进行编码 HttpUtility.UrlDecode(“中文”);

      public class ResponseHelper
        {
            public static void Respose(HttpListenerResponse response, string jsonStr = "")
            {
                byte[] buffer = Encoding.UTF8.GetBytes(jsonStr);
                response.ContentLength64 = buffer.Length;
                response.ContentType = "application/json";
                response.ContentEncoding = Encoding.UTF8;
                response.StatusCode = 200;
                Stream output = response.OutputStream;
                output.Write(buffer, 0, buffer.Length);
                //关闭输出流,释放相应资源
                output.Close();
                response.Close();
            }
        }
    

    转载于:链接

    相关文章

      网友评论

          本文标题:C# 解决httplistener querystring 中文

          本文链接:https://www.haomeiwen.com/subject/zfptjltx.html