对于Post请求在BaseController中读取数据后,发现在具体的要实现的Action中读取到的数据为空
原因是读取完成之后没有回到原始的位置
最后一句代码:至关重要
httpContext.Request.InputStream.Seek(0, SeekOrigin.Begin);
byte[] byts = new byte[httpContext.Request.InputStream.Length];
httpContext.Request.InputStream.Read(byts, 0, byts.Length);
requestData = Encoding.UTF8.GetString(byts);
httpContext.Request.InputStream.Seek(0, SeekOrigin.Begin);

本文解决了一个关于在BaseController中处理POST请求时遇到的问题:在读取完数据后,后续Action无法获取到数据的情况。文章详细介绍了如何通过将输入流位置重置为初始位置来解决该问题。

487

被折叠的 条评论
为什么被折叠?



