问题场景如下:在项目的一般处理程序中,所有方法都是通过《context.Request["参数名"].ToString()》来获取参数的值。
如果我直接将参数追加到URL后面,直接Post,后台是可以通过context.Request["参数名"].获取到参数值的,但是当我将参数放到请求的Body里中后,后台再这样获取就无法读取到参数。
只能通过读流的方式,获取到参数。因为这个项目是前人留下来的,所以不好做结构的改变,所以这个方式只能弃用。
后来我尝试修改前台Post提交的Content-Type,修改为《Content-Type: application/x-www-form-urlencoded》,然后执行,发现后台竟然可以通过context.Request["参数名"]去获取参数了。
啰嗦了半天的重点是,Post的Content-Type如果是《Content-Type:text/plain》那么后台获取参数只能通过独流的方式获取,Post的Content-Type如果是《Content-Type: application/x-www-form-urlencoded》,那么后台就可以通过上下文中的context.Request["参数名"].去获取参数的值
说明:context为HttpContext定义的名称,如下图