程序开发 > C# > 正文

C#获取Url不同路径的方法大全

亮术网 2020-07-24 本网原创

在 C# 中,用 Request 对象来获取 Url  的各种路径,包括上一页 Url、域名、绝对路径、相对路径和物理路径。虽然在某些情况下,无法获取到 Url,但可以获取到大部分情况下的 Url,下面一一介绍。

 

1、获取当前页和前一页Url

(1)获取当前页:HttpContext.Current.Request.Url.PathAndQuery;

说明:PathAndQuery 意思已经很明显,就是取路径和参数(即完整路径),浏览器地址栏显示的是什么就获到什么。

 

(2)获取前一页:Page.Request.UrlReferrer;

说明:Referrer 表示前一页(上一页)。

 

(3)注意:如果当前页是由前一页的 Javascript 导航过来的,则无法通过上述方法获取到 Url,但可以把 Url 保存到 Cookies。

 

2、获取域名

使用语句:Request.Url.Host;

说明:仅获取 Url 中的域名部分。

 

3、获取绝对(完全)网址

使用语句:Request.Url.AbsoluteUri;

说明:Absolute 是绝对的意思,知道这个意思就很容易理解了,也就是浏览器地址栏显示的是什么就获取到什么。

 

4、获取绝对路径

使用语句:Request.RawUrl;(Request.Url.PathAndQuery;) 和 Request.Url.AbsolutePath;

说明:raw 是不完整的意思,RawUrl 就是获取除域名外的路径,如 /ie/index.aspx;PathAndQuery 和 AbsolutePath 也一样。

提示:

HttpContext.Current.Request.Url.Query;(仅获取Url后的参数,如 域名/pub/Item.aspx?type=ie,则结果为 ?type=ie)

 

5、获取文件路径

使用语句:Request.CurrentExecutionFilePath;、Request.FilePath; 和 Request.Path;

说明:CurrentExecutionFilePath 意思是当前执行文件路径,FilePath 意思是文件路径,Path 意思是路径;无论用那一个,获取到的结果都一样,也就是获取除域名外的文件路径,如 /ie/index.aspx。

 

6、获取物理路径

1、使用语句:Request.PhysicalApplicationPath;

说明:PhysicalApplicationPath 意思是物理应用程序路径,也就是获取网站的根目录所在磁盘的物理路径,假如网站在放在 d:\webhost\ 目录下,则获取到就是 d:\webhost\。

 

2、使用语句:Request.PhysicalPath;

说明:PhysicalPath 意思是物理路径,即获取当前访问网页的物理路径,假如网站在放在 d:\webhost\ 目录下,当前访问网页是主页(index.aspx),则获取到是 d:\webhost\index.aspx。

 

3、使用语句:Request.ApplicationPath;

说明:ApplicationPath 意思是应用程序路径,即获取当前访问网页的根目录,如 当前访问网页是 /ie/index.aspx 和 /word/index.aspx,则都获取到 /。

本文浓缩标签:获取UrlC#