在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中提取一些值.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....