在JavaScript和C#中获得referer
1. JavaScript
/** * 获取HTTP请求的Referer * @ishost 布尔类型 Referer为空时是否返回Host(网站首页地址) */ function get_http_referer(ishost) { if (ishost === undefined) { ishost = true; } if (document.referrer) { return document.referrer; } else { if (ishost) { return window.location.protocol + "//" + window.location.host; } else { return ""; } } }
2. C#
/// <summary> /// 获取HTTP请求的Referer /// </summary> /// <param name="ishost">Referer为空时是否返回Host(网站首页地址)</param> /// <returns>string</returns> public string GetReferer(bool ishost) { if ( Request.UrlReferrer != null) { return Request.UrlReferrer.ToString(); } else { if (ishost) { return Request.Url.Scheme + "://" + Request.Url.Authority; } else { return ""; } } }
3. C#中取得Request URL的各个部分
网址:http://localhost:1897/News/Press/Content.aspx/123?id=1#toc | |
Request.ApplicationPath | / |
Request.PhysicalPath | D:\Projects\Solution\web\News\Press\Content.aspx |
System.IO.Path.GetDirectoryName(Request.PhysicalPath) | D:\Projects\Solution\web\News\Press |
Request.PhysicalApplicationPath | D:\Projects\Solution\web\ |
System.IO.Path.GetFileName(Request.PhysicalPath) | Content.aspx |
Request.CurrentExecutionFilePath | /News/Press/Content.aspx |
Request.FilePath | /News/Press/Content.aspx |
Request.Path | /News/Press/Content.aspx/123 |
Request.RawUrl | /News/Press/Content.aspx/123?id=1 |
Request.Url.AbsolutePath | /News/Press/Content.aspx/123 |
Request.Url.AbsoluteUri | http://localhost:1897/News/Press/Content.aspx/123?id=1 |
Request.Url.Scheme | http |
Request.Url.Host | localhost |
Request.Url.Port | 1897 |
Request.Url.Authority | localhost:1897 |
Request.Url.LocalPath | /News/Press/Content.aspx/123 |
Request.PathInfo | /123 |
Request.Url.PathAndQuery | /News/Press/Content.aspx/123?id=1 |
Request.Url.Query | ?id=1 |
Request.Url.Fragment | |
Request.Url.Segments | / News/ Press/ Content.aspx/ 123 |