分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

接收客户端在HTTP请求期间发送过来的值(HttpRequestBase/HttpRequest、HttpContextBase/HttpConext、HttpContext.Current)

发布时间:2023-09-06 01:09责任编辑:胡小海关键词:暂无标签

虽然基本知道Asp.Net MVC程序如何接收来自客户端HTTP的信息,但是关于HTTP的请求流转和数据传递机制有些模糊,今天就来稍作整理吧。

来看看客户端代码:

<form action="Default" method="post" > ???用户名:<input type="text" name="userName" /> ???<input type="submit" value="提交" /></form>您输入的用户名是:@ViewBag.userName

再来看看服务端代码:

public class TestController : Controller{ ???[HttpGet] ???public ActionResult Default() ???{ ???????return View(); ???} ???[HttpPost] ???public ActionResult Default(string abc) ???{ ???????ViewBag.userName = Request["userName"];
     或
     ViewBag.userName = HttpContext.Request["userName"];
????????return View(); ????}}

之所以在控制器里可以直接使用Request["XXX"]来接收表单项,是因为当前控制器继承自Controler,Controler类中有类型为HttpRequestBase的Request属性,由于这里TestController继承自Controller类,因此其内部也具有类型为HttpRequestBase的Request属性,这个Request属性就存储了当前HTTP请求的客户端相关信息(比如上面的表单信息)。

这里Request属性是HttpRequestBase类型,当我们需要把接收客户端值的任务交给当前控制器对象以外的其他类实例来处理时,那么可以将当前控制器对象的这个Request属性作为参数传给其他类实例。

另外,注意到Controller的定义中还有一个类型为HttpContextBase的HttpContext属性,

接收客户端在HTTP请求期间发送过来的值(HttpRequestBase/HttpRequest、HttpContextBase/HttpConext、HttpContext.Current)

原文地址:http://www.cnblogs.com/Arlar/p/7498205.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved