使用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

  4. JavaScript window.location对象

  http://www.glzy8.com/article/57407.htm

  怎么样,是不是已经学会了在javascript和C#中获取页面的referer了呢?如有什么疑问,也可以联系我