如何在ASP.NET中获取原始请求体?
发布时间:2020-05-23 15:31:44 所属栏目:asp.Net 来源:互联网
导读:在HttpApplication.BeginRequest事件中,如何读取整个原始请求正文?当我尝试读它时,InputStream的长度为0,导致我相信它可能已经被ASP.NET读取了。 我试图读这个InputStream: using (StreamReader reader = new StreamReader(context.Request.InputStream)
|
在HttpApplication.BeginRequest事件中,如何读取整个原始请求正文?当我尝试读它时,InputStream的长度为0,导致我相信它可能已经被ASP.NET读取了。 我试图读这个InputStream: using (StreamReader reader = new StreamReader(context.Request.InputStream))
{
string text = reader.ReadToEnd();
}
但我得到的是一个空字符串。我把这个位置重新设置为0,但是当然,一旦这个流被读出来,它就没有了,所以没有办法。最后,检查流的长度返回0。 编辑:这是用于POST请求。 解决方法请求对象未填充在BeginRequest事件中。您需要在事件生命周期中稍后访问此对象,例如Init,Load或PreRender。此外,您可能希望将输入流复制到内存流,因此可以使用seek:protected void Page_Load(object sender,EventArgs e)
{
MemoryStream memstream = new MemoryStream();
Request.InputStream.CopyTo(memstream);
memstream.Position = 0;
using (StreamReader reader = new StreamReader(memstream))
{
string text = reader.ReadToEnd();
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net单选按钮分组
- 部署 – Crystal报表文件未部署到ASP.NET MVC中的服务器
- ASP.Net核心 – 获取帖子表格的所有数据
- asp.net – 实体框架:Singletonish ObjectContext – Good
- asp经典 – ASP Classic中的注释代码
- asp.net-mvc – ASP.Net MVC2自定义模板通过Ajax和模型更新
- asp.net-mvc – 是否可以在基于路由的MVC4中使用不同的布局
- asp.net – 在Application_BeginRequest中设置会话变量
- asp.net – 在我的网站中添加HttpModule时出现“500内部服务
- 什么是%=或%:在ASP.NET中调用?
推荐文章
站长推荐
热点阅读
