zoukankan      html  css  js  c++  java
  • Asp.net中Request.Url的各个属性对应的意义介绍

    Asp.net中Request.Url的各个属性对应的意义介绍

    本文转载自 http://www.jb51.net/article/30254.htm

    网络上关于Request.Url的说明已经很多也很丰富了,但是自己还是实践了一下,看看最终的结果与网络上的是否一致
     
    1.简单的环境搭建 
      在本地IIS上配置了一个网站:主机名为wjnhome.com,端口88,然后建了一个虚拟目录指向同一站点,虚拟目录名称为virtual,配置host为127.0.0.1  wjnhome.com 
      所以地址就为:http://jb51.net:88/virtual/urldemo.aspx?id=2#top 
    2.编写简单的代码 

    //虚拟目录的路径 
    Response.Write("<strong>Request.ApplicationPath:</strong>" + Request.ApplicationPath + "</br>"); 
    //站点的物理路径(完整路径) 
    Response.Write("<strong>Request.PhysicalPath:</strong>" + Request.PhysicalPath + "</br>"); 
    //站点物理路径的目录 
    Response.Write("<strong>DirectoryName:</strong>" + System.IO.Path.GetDirectoryName(Request.PhysicalPath) + "</br>"); 
    //站点物理路径的目录 
    Response.Write("<strong>Request.PhysicalApplicationPath:</strong>" + Request.PhysicalApplicationPath + "</br>"); 
    //当前页面的文件名 
    Response.Write("<strong>FileName:</strong>" + System.IO.Path.GetFileName(Request.PhysicalPath) + "</br>"); 
    //当前页面的虚拟路径 
    Response.Write("<strong>Request.CurrentExecutionFilePath:</strong>" + Request.CurrentExecutionFilePath + "</br>"); 
    //当前页面的虚拟路径 
    Response.Write("<strong>Request.FilePath:</strong>" + Request.FilePath + "</br>"); 
    Response.Write("<strong>Request.Path:</strong>" + Request.Path + "</br>"); 
    //原始URL 
    Response.Write("<strong>Request.RawUrl:</strong>" + Request.RawUrl + "</br>"); 
    //绝对路径(不包括参数什么的) 
    Response.Write("<strong>Request.Url.AbsolutePath:</strong>" + Request.Url.AbsolutePath + "</br>"); 
    //绝对URL 
    Response.Write("<strong>Request.Url.AbsoluteUri:</strong>" + Request.Url.AbsoluteUri + "</br>"); 
    //URL协议方案 
    Response.Write("<strong>Request.Url.Scheme:</strong>" + Request.Url.Scheme + "</br>"); 
    //URL的主机名 
    Response.Write("<strong>Request.Url.Host:</strong>" + Request.Url.Host + "</br>"); 
    //URL端口号 
    Response.Write("<strong>Request.Url.Port:</strong>" + Request.Url.Port + "</br>"); 
    //主机名+端口号 
    Response.Write("<strong>Request.Url.Authority:</strong>" + Request.Url.Authority + "</br>"); 
    //获取文件名的本地操作系统表现形式 
    Response.Write("<strong>Request.Url.LocalPath:</strong>" + Request.Url.LocalPath + "</br>"); 
    //附加路径信息,例如http://jb51.net:88/UrlDemo.aspx/Hello?id=22#top 那么这里就是Hello 
    Response.Write("<strong>Request.PathInfo:</strong>" + Request.PathInfo + "</br>"); 
    //URL的路径和GET参数 
    Response.Write("<strong>Request.Url.PathAndQuery:</strong>" + Request.Url.PathAndQuery + "</br>"); 
    //URL的GET参数 
    Response.Write("<strong>Request.Url.Query:</strong>" + Request.Url.Query + "</br>"); 
    //主要指的是http://jb51.net:88/UrlDemo.aspx/Hello?id=22#top中#后面的top。 
    //但一般情况下无法获取值,因为浏览器不会把这个值发送到服务器端 
    Response.Write("<strong>Request.Url.Fragment:</strong>" + Request.Url.Fragment + "</br>"); 
    //主机名 
    Response.Write("<strong>Request.Url.DnsSafeHost:</strong>" + Request.Url.DnsSafeHost + "</br>"); 
    //URL的全部 
    Response.Write("<strong>Request.Url.OriginalString:</strong>" + Request.Url.OriginalString + "</br>"); 
    //这种情况 Uri uriAddress = new Uri ("http://user:password@www.contoso.com/index.htm ") Console.WriteLine(uriAddress.UserInfo); 
    Response.Write("<strong>Request.Url.UserInfo:</strong>" + Request.Url.UserInfo + "</br>"); 
    //从某个页面跳转过来的时候会显示源页面的值 
    Response.Write("<strong>Request.UrlReferrer:</strong>" + Request.UrlReferrer + "</br>"); 
    //URI的每一段 
    for (var i = 0; i < Request.Url.Segments.Length;i++ ) 

    Response.Write("<strong>Request.Url.Segment" + i + ":</strong>" + Request.Url.Segments[i] + "</br>"); 

    3.输出结果 
      Request.ApplicationPath:/virtual 
      Request.PhysicalPath:E:VsProject201200420UrlDemoUrlDemourldemo.aspx 
      DirectoryName:E:VsProject201200420UrlDemoUrlDemo 
      Request.PhysicalApplicationPath:E:VsProject201200420UrlDemoUrlDemo 
      FileName:urldemo.aspx 
      Request.CurrentExecutionFilePath:/virtual/urldemo.aspx 
      Request.FilePath:/virtual/urldemo.aspx 
      Request.Path:/virtual/urldemo.aspx 
      Request.RawUrl:/virtual/urldemo.aspx?id=2 
      Request.Url.AbsolutePath:/virtual/urldemo.aspx 
      Request.Url.AbsoluteUri:http://jb51.net:88/virtual/urldemo.aspx?id=2 
      Request.Url.Scheme:http 
      Request.Url.Host:wjnhome.com 
      Request.Url.Port:88 
      Request.Url.Authority:wjnhome.com:88 
      Request.Url.LocalPath:/virtual/urldemo.aspx 
      Request.PathInfo: 
      Request.Url.PathAndQuery:/virtual/urldemo.aspx?id=2 
      Request.Url.Query:?id=2 
      Request.Url.Fragment: 
      Request.Url.DnsSafeHost:wjnhome.com 
      Request.Url.OriginalString:http://jb51.net:88/virtual/urldemo.aspx?id=2 
      Request.Url.UserInfo: 
      Request.UrlReferrer: 
      Request.Url.Segment0:/ 
      Request.Url.Segment1:virtual/ 
      Request.Url.Segment2:urldemo.aspx 
  • 相关阅读:
    Linux之安装python3.6.6
    Python之计算器
    springboot项目快速代码生成工具
    电脑忘记密码怎么办?
    HTML编辑器
    WCF的几种寄宿方式
    获取客户端IP 和 外网IP
    发送短信验证码
    动态库,服务tips
    asp.net WebService 与 WCF的区别
  • 原文地址:https://www.cnblogs.com/xytmj/p/7753323.html
Copyright © 2011-2022 走看看