.net webapi 接收参数_webapi使用教程
时间: 2023-12-08 15:03:41 浏览: 91
在 .NET WebAPI 中,我们可以通过多种方式接收参数。以下是其中一些常用的方式:
1. 通过 URI 中的查询字符串传递参数
我们可以使用 [FromUri] 特性来获取从 URI 中传递的参数。例如,以下代码演示了如何通过查询字符串传递参数:
```csharp
public IHttpActionResult Get([FromUri] string name, [FromUri] int age)
{
// 处理参数
}
```
在这个例子中,我们使用 [FromUri] 特性将 name 和 age 参数标记为从 URI 中获取。如果我们发出 GET 请求 `http://example.com/api/person?name=John&age=30`,那么 WebAPI 将正确地将 name 和 age 参数设置为 "John" 和 30。
2. 通过请求正文传递参数
我们可以使用 [FromBody] 特性将参数绑定到请求正文中的数据。例如,以下代码演示了如何使用 [FromBody] 特性传递一个自定义对象:
```csharp
public IHttpActionResult Post([FromBody] Person person)
{
// 处理 person 对象
}
```
在这个例子中,我们使用 [FromBody] 特性将 person 参数标记为从请求正文中获取。如果我们发送一个 POST 请求,并将以下 JSON 数据作为请求正文发送:
```json
{
"Name": "John",
"Age": 30
}
```
那么 WebAPI 将正确地将 person 对象设置为一个名为 "John" 年龄为 30 的 person 对象。
3. 通过请求头传递参数
我们可以使用 [FromHeader] 特性将参数绑定到请求头中的值。例如,以下代码演示了如何使用 [FromHeader] 特性传递一个字符串参数:
```csharp
public IHttpActionResult Get([FromHeader] string authToken)
{
// 处理 authToken
}
```
在这个例子中,我们使用 [FromHeader] 特性将 authToken 参数标记为从请求头中获取。如果我们发送一个 GET 请求,并将以下请求头包含在其中:
```
authToken: 123456
```
那么 WebAPI 将正确地将 authToken 参数设置为 "123456"。
以上是 .NET WebAPI 中接收参数的一些常用方式,但还有其他方式可以使用。根据不同的场景和需求,我们可以使用不同的方式来接收参数。
阅读全文