get和post请求【ASP.NET】

【代码片段】

.ashx文件

<body>
    <!--表单:收集用户的数据,比如:用户注册信息的时候-->
    <!--表单对一个web应用程序网站来说是必不可少的-->
    <form method="get" action="AddInfo.ashx">
        用户名:<input type="text" name="txtName" /><br />
        用户名:<input type="password" name="txtPwd" /><br />
        <input type="submit" value="提交" />
    </form>
</body>

.html文件

public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/plain";
        string userNmae = context.Request.QueryString["txtName"];//接收的是表单元素name属性的值
        string userPwd = context.Request.QueryString["txtPwd"];         
        context.Response.Write("用户名是:"+userNmae+",密码是:"+userPwd);
    }

在这里插入图片描述

【get提交】

如果表单是以GET方式将数据发送到服务端,那么会将用户在表单中输入的数据放在浏览器的地址栏中发送到服务端。
在这里插入图片描述

【post提交】

如果数据是以POST提交,那么表单中的数据全部都放在请求报文的请求体中

只将.html 中的"get" 改为"post" ,.ashx代码更改如下, 运行即可。

string userNmae = context.Request.Form["txtName"];
string userPwd = context.Request.Form["txtPwd"];

在这里插入图片描述
在IE浏览器中利用HTTP协议分析工具httpwatch插件我们可以看到,如图。在这里插入图片描述

【表单提交时用get还是post?】

一般情况下都用post

  • 因为用户登录,注册,输入的信息,显示在地址栏中会不安全。post提交比get提交要安全。
  • 另外,浏览器都会对地址栏中的数据的长度做一个限制,post发送的数据也比get大(文件)。如果发送文件,post再适合不过。
  • 一般搜索的时候用get

除了将表单中的method改成get或post,是否还有其他的方式表示get请求或post请求?

  • 在浏览器地址中直接输入地址,敲回车,也是向服务器发送get请求。
  • 单击超链接也是get请求
  • post只有将表单中的method改成post这一种请求

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值