微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在ASP.NET中读取请求体

在ASP.NET中如何读取请求体?我正在使用Firefox的REST Client附加组件来形成对我在本地托管的网站上的资源的GET请求,而在Request Body中,我只是将字符串“test”尝试读取它服务器.

在服务器代码(这是一个非常简单的MVC动作)我有这个:

var reader = new StreamReader(Request.InputStream);
var inputString = reader.ReadToEnd();

但是当我调试它时,inputString始终为空.我不知道如何(如在FireBug中)来确认请求正文的确是正确发送的,我想我只是假设这个加载项是正确的.也许我正在读价值不正确?

解决方法

也许我错了我的上学,但我认为GET请求实际上没有一个机构. This page states.

The HTML specifications technically define the difference between “GET” and “POST” so that former means that form data is to be encoded (by a browser) into a URL while the latter means that the form data is to appear within a message body.

所以也许你正在做的事情正确,但是你必须POST数据才能有一个消息体?

更新

响应您的评论,最“正确”的RESTful方式是将每个值作为自己的参数发送:

site.com/MyController/MyAction?id=1&id=2&id=3...

那么如果你给它一个同名的数组参数,你的动作就会自动绑定这些参数:

public ActionResult MyAction(int[] id) {...}

或者如果你是一个虐待者,你可以尝试一次从Request.QueryString中提取一些值.

原文地址:https://www.jb51.cc/aspnet/249463.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐