asp.net mvc怎么对post提交的编码了的参数字符串解码?

安卓客户端用HttpUrlConnection以post请求,对数据进行了Urlencode

 String param="beginId="+beginNumber+"&dataRequestType=dataRequest";                    //这里beginNumber是一个变量,对这个字符串进行了urlencode
            String paramEncode= URLEncoder.encode(param,"UTF-8");    //这个字符串编码后作为http报文的正文内容传递

然后在asp.net mvc的controller的action中接收

  var begin = Request["beginId"];
    if (begin == null)  beginId = 0;

但是目前来看,不管客户端传的是什么beginId的值是什么,都只能获取到beginId为0时的结果,我猜想可能是客户端对http报文正文内容,作为post方式提交的参数字符串进行了编码,但是服务端没解码的原因致使不能获取到beginId的值。求教asp.net mvc怎么对http的进行了urlencode的post方式的参数字符串进行解码,并正确获得参数的值?

1个回答

 System.IO.Stream sm = Request.InputStream;
int len = (int)sm.Length;
byte[] inputByts = new byte[len];
sm.Read(inputByts, 0 , len);
sm.Close();
string data = Encoding.Default.GetString(inputByts);
data = Server.UrlDecode(data);
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问