ASP.NET获取请求的url信息汇总

  最近做项目需要处理一个用代码获取当前网站的域名或ip信息的问题,于是尝试了ASP.NET中各种获取url信息的方法,在此总结一下:

在Global.asax文件中的 Application_BeginRequest 方法中,加入以下代码,利用日志文件记录各种方法得到的信息

            HttpApplication app = sender as HttpApplication;

            logger.Debug("Request.ApplicationPath:" + app.Request.ApplicationPath);
logger.Debug("Request.FilePath:" + app.Request.FilePath);
logger.Debug("Request.Path:" + app.Request.Path);
logger.Debug("Request.PathInfo:" + app.Request.PathInfo);
logger.Debug("Request.PhysicalApplicationPath:" + app.Request.PhysicalApplicationPath);
logger.Debug("Request.PhysicalPath:" + app.Request.PhysicalPath);
logger.Debug("Request.RawUrl:" + app.Request.RawUrl);
logger.Debug("Request.Url:" + app.Request.Url);
logger.Debug("Request.Url.AbsolutePath:" + app.Request.Url.AbsolutePath);
logger.Debug("Request.Url.AbsoluteUri:" + app.Request.Url.AbsoluteUri);
logger.Debug("Request.Url.Authority:"+app.Request.Url.Authority);
logger.Debug("Request.Url.Fragment:" + app.Request.Url.Fragment);
logger.Debug("Request.Url.Host:" + app.Request.Url.Host);
logger.Debug("Request.Url.LocalPath:" + app.Request.Url.LocalPath);
logger.Debug("Request.Url.OriginalString:" + app.Request.Url.OriginalString);
logger.Debug("Request.Url.PathAndQuery:" + app.Request.Url.PathAndQuery);
logger.Debug("Request.Url.Query:" + app.Request.Url.Query);
logger.Debug("Request.Url.Segments:");
foreach (string item in app.Request.Url.Segments)
{
logger.Debug(item+"\t");
}

  logger 是定义的一个基于log4net的日志助手

Common.LogHelper 日志助手类 定义

请求url为:http://localhost:13877/NewsList-18.aspx?t=1&s=1 时的日志输出结果:

分类总结一下:

获得完全路径(在浏览器中地址栏的url):Request.Url、Request.Url.AbsoluteUri、Request.Url.OriginalString

相对网站的虚拟路径(带请求参数):Request.Url.RawUrl、Request.Url.PathAndQuery

相对网站的虚拟路径(不带请求参数):Request.FilePath、Request.Path、Request.Url.AbsolutePath、Request.Url.LocalPath

仅获取请求参数信息:Request.Url.Query

ASP.NET获取请求的url信息汇总的更多相关文章

  1. asp.net获取当前网址url的各种属性(文件名、参数、域名 等)的代码

    用 asp.net获取当前网页地址的一些信息. 设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http:// ...

  2. 【转】asp.net获取当前页面的url地址

    设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://"是协议名 "www.jb5 ...

  3. asp.net获取当前网址url

    asp.net获取当前网址url   设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://" ...

  4. asp.net获取当前网址url【转】

    设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://"是协议名 "www.jb5 ...

  5. asp.net获取当前页面的url地址

    设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://"是协议名 "www.jb5 ...

  6. 获取当前页面的URL信息

    以前在做网站的时候,经常会遇到当前页的分类高亮显示,以便让用户了解当前处于哪个页面.之前一直是在每个不同页面写方法.工程量大,也不便于修改.一直在想有什么简便的方法实现.后来在网上查到可以用获取当前U ...

  7. HttpServletRequest获取请求得URL信息

    request对象中包含的是请求信息,当我们在浏览器地址栏上输入:http://localhost:8080/Example/AServlet?username=zhangsan,这段地址也会作为请求 ...

  8. JQUERY获取当前页面的URL信息

    以前在做网站的时候,经常会遇到当前页的分类高亮显示,以便让用户了解当前处于哪个页面.之前一直是在每个不 同页面写方法.工程量大,也不便于修改.一直在想有什么简便的方法实现.后来在网上查到可以用获取当前 ...

  9. 前端 jquery获取当前页面的URL信息

    以前在做网站的时候,经常会遇到当前页的分类高亮显示,以便让用户了解当前处于哪个页面.之前一直是在每个不同页面写方法.工程量大,也不便于修改.一直在想有什么简便的方法实现.后来在网上查到可以用获取当前U ...

随机推荐

  1. 未知高度定宽div水平居中及垂直居中(兼容ie6及其他牛逼浏览器)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  2. 译:在ASP.NET中如何对cookies进行加密和解密

    译文地址:http://www.codeproject.com/Tips/872826/Encrypt-Decrypt-Cookies-in-ASP-NET 源代码:http://files.cnbl ...

  3. JRE 1.8.0_65/66 Certified with Oracle E-Business Suite

    Java Runtime Environment 1.8.0_65 (a.k.a. JRE 8u65-b17) and JRE 1.8.0_66 (8u66-b17) and later update ...

  4. Ubuntu 配置AP总结

    1.这个是使用别人写的一个GUI来配置,:http://hi.baidu.com/lexiangtaotao/item/5d4e87f22db132c70cd1c86f 2.使用hostapd配置:h ...

  5. ThinkJS 项目用 WebStorm 来设置断点与调试

    1. 前置条件.已按ThinkJS 2.0 文档 之 <创建项目> 建好项目. 说明a: 本示例创建项目名为wagang,使用es6配置: thinkjs new wagang --es6 ...

  6. NOP登录验证管理

    截取Nop登录代码如下: 其实 public ActionResult Login(LoginModel model, string returnUrl, bool captchaValid) { / ...

  7. 【转载】关于 Ubuntu 的小知识分享

    转载自:http://os.51cto.com/art/201307/402197.htm 一.默认开机直接进入到Ubuntu命令行界面 安装Ubuntu后,开机会默认进入到图形界面,如果不喜欢图形界 ...

  8. 【初识 JQMobile 小小总结】

    作为一个前端新手,之前还没有接触过手机端的项目.两周前项目经理告诉我要做手机端,让我用JQMobile. 之前在前端群里,偶尔听说过jqmobile很坑,自己又查了下其他框架,比如zepto.amaz ...

  9. UITextField-secureTextEntry

    1.UITextFiled的密文输入   secureTextEntry  安全文本输入  secure:安全  Entry:入口

  10. fork()函数详解

    原文链接:http://blog.csdn.net/jason314/article/details/5640969  一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函 ...