zoukankan      html  css  js  c++  java
  • ASP.NET获取请求的url信息汇总

    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+"	");
                }    

      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

  • 相关阅读:
    [iOS]Xcode+GitHub远程代码托管(GIT, SVN)
    [iOS]Xcode处理过时方法的警告
    [iOS]@synthesize和@dynamic关键字
    [iOS]图片高清度太高, 导致内存过大Crash
    [软件]Xcode查找系统framework所在路径
    [软件]在浏览器里添加MarkDown Here(插件)
    [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(四. iOS端代码实现)
    ios -Unity3D的EasyAR集成到已经有项目中。
    iOS创建安全的单例
    阿里云轻量应用服务器 配置mysql详解(转载)
  • 原文地址:https://www.cnblogs.com/weihanli/p/aspdotnetGetRequestUrlInfo.html
Copyright © 2011-2022 走看看