当前位置:首 页 > 攻城湿 > 查看文章

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

攻城湿 你是第2067个围观者 0条评论 供稿者: 标签:

网络上关于Request.Url的说明已经很多也很丰富了,但是自己还是实践了一下,看看最终的结果与网络上的是否一致

1.简单的环境搭建
  

在本地IIS上配置了一个网站:主机名为wjnhome.com,端口88,然后建了一个虚拟目录指向同一站点,虚拟目录名称为virtual,配置host为127.0.0.1||zhaorong.me

  

所以地址就为:http://zhaorong.me:88/virtual/urldemo.aspx?id=2#top

2.编写简单的代码
复制代码 代码如下:

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

3.输出结果

Request.ApplicationPath /virtual
Request.PhysicalPath E:\VsProject\201200420\UrlDemo\UrlDemo\urldemo.aspx
DirectoryName E:\VsProject\201200420\UrlDemo\UrlDemo
Request.Url.OriginalString http://zhaorong.me:88/virtual/urldemo.aspx?id=2
Request.Url.UserInfo
Request.UrlReferrer
Request.Url.Segment0 /
Request.Url.Segment1 virtual/
Request.Url.Segment2 urldemo.aspx
Request.PhysicalApplicationPath E:\VsProject\201200420\UrlDemo\UrlDemo\
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://zhaorong.me:88/virtual/urldemo.aspx?id=2
Request.Url.Scheme http
Request.Url.Host zhaorong.me
Request.Url.Port 88
Request.Url.Authority zhaorong.me: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 zhaorong.me
这家伙很懒,什么都没写!

—— zhaorong

zhaorong
你可能也喜欢Related Posts
众说纷纭Comments
大眼 可爱 大笑 坏笑 害羞 发怒 折磨 快哭了 大哭 白眼 晕 流汗 困 腼腆 惊讶 憨笑 色 得意 骷髅 囧 睡觉 眨眼 亲亲 疑问 闭嘴 难过 淡定 抗议 鄙视 猪头
小提示:直接粘贴图片到输入框试试
努力发送中...
  • 评论最多
  • 最新评论
  • 随机文章
footer logo
未经许可请勿自行使用、转载、修改、复制、发行、出售、发表或以其它方式利用本网站之内容
Copyright © zhaorong All Rights Reserved. 滇ICP备15006105号-1