Request请求

本文介绍了ASP.NET中页面请求的处理过程,包括各种请求属性的获取方式,如客户端IP地址、请求类型等,并展示了如何在服务器端捕获这些信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<1>

HTMLPage.htm请求页

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<body>
<!--如果不指定method属性,那么method的默认值就是get-->
<form action="Default.aspx">

<input type="text" name="UserName" id="UserName" />
<input type="text" name="Age" id="Text1" />

<input type="submit"value="提交" />
</form>
</body>
</html>


Default.aspx.cs处理页

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.ContentType = "text/html";
        //获得服务器的虚拟目录路径,例如页面路径为:http://localhost:2542/WebSite2/Default.aspx,获得的结果为: /WebSite2。
        Response.Write(Request.ApplicationPath + "<br>");

        //获得当前页面在ASP.NET中相对根目录的路径,输出结果:~/Default.aspx。
        Response.Write(Request.AppRelativeCurrentExecutionFilePath + "<br>");

        //获得安装在客户端上的.NET Framework版本:输出结果:0.0
        Response.Write(Request.Browser.ClrVersion + "<br>");

        

        //----------------------------------------------------------------------------------


        //获得当前请求的虚拟路径 :输出结果: /WebSite2/Default.aspx
        Response.Write(Request.CurrentExecutionFilePath + "<br>");

        //获得当前文件的虚拟路径  :输出结果: /WebSite2/Default.aspx。跳转方式不一样时该参数与上一个参数可能存在差异
        Response.Write(Request.FilePath + "<br>");



        //----------------------------------------------------------------------------------

        //获得客户端请求服务器页面的方式。GET/POST等等:  输出结果:GET 
        Response.Write(Request.HttpMethod + "<br>");

        //获得客户端请求服务器页面的方式。GET/POST等等:  输出结果:GET
        Response.Write(Request.RequestType + "<br>");


        //----------------------------------------------------------------------------------


        //获得当前页面的相对虚拟路径 :输出结果:/WebSite2/Default.aspx
        Response.Write(Request.Path + "<br>");

        //获得页面的服务器磁盘绝对路径  :输出结果:F:\Request资料\WebSite2\Default.aspx
        Response.Write(Request.PhysicalPath + "<br>");

        //获得虚拟目录的服务器磁盘绝对路径  :输出结果:F:\Request资料\WebSite2\
        Response.Write(Request.PhysicalApplicationPath + "<br>");

        //获得虚拟目录的服务器磁盘绝对路径  :输出结果:
        Response.Write(Request.PathInfo +"<br>");


        //----------------------------------------------------------------------------------

        Response.Write(Request.PhysicalApplicationPath + "</br>"); //获取当前应用的物理路径。:输出结果:F:\Request资料\WebSite2\

        //当前页面为Default.aspx ;假如说我在HTMLPage.htm也面中写一个超链接<a href="Default.aspx">跳转</a>
        Response.Write(Request.RawUrl + "<br/>");// 获取当前请求的原始 URL。:输出结果为:/WebSite2/Default.aspx

        //当前页面为Default.aspx ;假如说我在HTMLPage.htm也面中写一个超链接<a href="Default.aspx">跳转</a>
        Response.Write(Request.Url + "<br/>");//获取有关当前请求的 URL 的信息:输出结果为:http://localhost:2542/WebSite2/Default.aspx


        //当前页面为Default.aspx ;假如说我在HTMLPage.htm也面中写一个超链接<a href="Default.aspx">跳转</a>
        Response.Write(Request.UrlReferrer + "<br/>"); //获取有关客户端上次请求的URL的信息;即 网页的来源,可以根据这个判断从百度搜到的哪个关键词,防下载盗链,防图片盗链,不过这个东西可以伪造。  这里的输出结果为:http://localhost:2542/WebSite2/HTMLPage.htm     

        
        //----------------------------------------------------------------------------------
        

        //获取请求的参数字符串  :输出结果:UserName=123&Age=456
        Response.Write(Request.QueryString  + "<br>");

        //获得页面编码方式的对象表示 :输出结果:System.Text.UTF8Encoding
        Response.Write(Request.ContentEncoding + "<br>");

        //获得客户端请求服务器页面的URL地址  :输出结果:http://localhost:2542/WebSite2/Default.aspx
        Response.Write(Request.Url + "<br>");




        //获取请求客户端的IP地址  :输出结果:::1
        Response.Write(Request.UserHostAddress + "<br>");

        //获取请求客户端的用户名  :输出结果:::1
        Response.Write(Request.UserHostName + "<br>");

    }
}







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值