zoukankan      html  css  js  c++  java
  • Asp.Net中自以为是的Encode

    Asp.Net 引擎可能是不错,但是它把程序员想的太笨,会自以为是做很多自动的 Encode 和 Decode,以下文举例:

    如果客户端我们 post 了如下的数据,

    image

    但是你实际得到的是:

    image

    也就是说,默认的调用 Asp.Net 引擎提供给我们的方法:

    byte[] bytesToPost = httpLocalRequest.ContentEncoding.GetBytes(httpLocalRequest.Form.ToString());

    我们将会得到一个错误的结果。

    我们必须:

    byte[] bytesToPost = ReadFully(httpLocalRequest.InputStream);
     

    private byte[] ReadFully(Stream input)
    {
        byte[] buffer = new byte[16 * 1024];
        using (MemoryStream ms = new MemoryStream())
        {
            int read;
            while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
            {
                ms.Write(buffer, 0, read);
            }

            return ms.ToArray();
        }
    }

  • 相关阅读:
    qt学习笔记(1):qt点击运行没有反应。
    JS Object类型
    JS Boolean数据类型和数据类型转换规律
    CSS雪碧图
    CSS
    PS基础
    JS number数字类型
    js中的变量和数据类型
    JS 基础
    单词
  • 原文地址:https://www.cnblogs.com/luminji/p/3537783.html
Copyright © 2011-2022 走看看