Asp.Net WebAPI 通过HttpContextBase或者HttpRquest 获取请求参数
2024-10-15 22:04:23
WEBAPI中的Request是HttpRequestMessage类型,不能像Web传统那样有querystring和from 方法接收参数,而传统的HttpReqest的基类是HttpReqestBase
所以这里我们就直接使用(HttpContextBase)Request.Properties["MS_HttpContext"]
public void Post([FromBody]string value)
{
HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];//获取传统context
HttpRequestBase request = context.Request;//定义传统request对象
string name = request.Form["name"];
}
1.获取遍历路由参数
//获取路由参数
IDictionary<string, object> dic = this.RequestContext.RouteData.Values;
StringBuilder builder = new StringBuilder();
foreach (var item in dic)
{
builder.AppendFormat("key:{0},value:{1}", item.Key, item.Value);
builder.AppendLine();
}
return builder.ToString();
2.遍历表单参数
////获取表单参数
HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];//获取传统context
HttpRequestBase request = context.Request;//定义传统request对象
StringBuilder builder = new StringBuilder();
foreach (string item in request.Form.Keys)
{
builder.AppendFormat("key:{0},value:{1}", item, request.Form[item]);
builder.AppendLine();
}
return builder.ToString();
3.使用asp.net 的 HttpRquest 获取参数方式
[HttpGet]
public string Test1()
{
System.Web.HttpRequest req= System.Web.HttpContext.Current.Request;
return req.QueryString["username"];
}
最新文章
- 用户中心mysql数据库表结构的脚本
- Lind.DDD.Domain.ISortBehavor~上移与下移
- JSP代码加固
- Jmeter 中通过(_time函数)获取10位时间戳的方法
- iOS iPad开发之UIPopoverController的使用
- linux grep 命令
- 使用RMAN对控制文件进行restore
- mysql的查询缓存模式介绍
- android studio 更改快捷键为eclipse中习惯的方式
- hdu 2896 病毒侵袭_ac自动机
- rndc 错误解决 和 远程配置
- 树莓派Raspberry中成功安装RobotFramework+Selenium
- SUID、SGID、Sticky BIT
- 02 基础设施/Gitlab - DevOps之路
- ASP.NET Core 配置跨域(CORS)
- 集合转数组的toArray()和toArray(T[] a)方法
- 简单xmlrpc服务器
- DELPHI中自定义消息的发送和接收
- Spring的一些资源
- 【模板】LCA