使用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.jb51.net/article/57407.htm

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

(0)

相关推荐

  • javascript获得当前的信息的一些常用命令

    本文内容很简单,给大家总结一下javascript获得当前的信息的一些常用命令 console.info("document.URL=" + document.URL); console.info("document.location.href=" + document.location.href); //console.info("document.base=" + document.base); //这是错的! console.info(&q

  • JavaScript获得当前网页来源页面(即上一页)的方法

    本文实例讲述了JavaScript获得当前网页来源页面(即上一页)的方法.分享给大家供大家参考.具体如下: 下面的JS代码通过document.referrer获得来源页面地址 <!DOCTYPE html> <html> <body> The referrer of this document is: <script> document.write(document.referrer); </script> </body> <

  • Javascript实现返回上一页面并刷新的小例子

    今天写了一个小小的提示成功的页面,同时要求返回上一页面,并实现对上一页面的操作进行刷新(例如删除的,添加的),在网上搜寻了一遍,基本上90%的都是说的是用window.history.go(-1), 或者是用 window.history.back(-1), 还有的说子页面刷新父页面用 复制代码 代码如下: <script language=JavaScript> self.opener.location.reload(); </script> 经过在JSP页面的测试,在操作页面选

  • JavaScript获得页面base标签中url的方法

    本文实例讲述了JavaScript获得页面base标签中url的方法.分享给大家供大家参考.具体如下: 如果网页中定义了base标签,我们可以通过js代码获得base的url地址 <!DOCTYPE html> <html> <head> <base id="htmldom" href="http://www.jb51.net/"> </head> <body> <p>Base UR

  • 返回上一页并自动刷新的JavaScript代码

    用JavaScript一般的使用history.go(-1)和history.back()等 但返回的是页面还是缓存中的数据,更新的数据不能马上呈现出来 这里只要使用一句简单的一条javascript语句就能实行,返回上一页并刷新页面 复制代码 代码如下: location.href = document.referrer;//重新载入上一页

  • JavaScript获得表单target属性的方法

    本文实例讲述了JavaScript获得表单target属性的方法.分享给大家供大家参考.具体实现方法如下: <!DOCTYPE html> <html> <body> <form id="frm1" action="form_action.asp" target="_blank"> First name: <input type="text" name="fnam

  • JavaScript获得url所有参数键值表的方法

    本文实例讲述了JavaScript获得url所有参数键值表的方法.分享给大家供大家参考.具体实现方法如下: function getUrlVars() { var vars = [], hash; var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); for (var i = 0; i < hashes.length; i++) { hash = hashes[i]

  • 使用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;     }

  • 流量统计器如何鉴别C#:WebBrowser中伪造referer

    使用webbrowser伪造referer的方法:webBrowser1.Navigate(url, "_self", null, "Referer:http://www.xxx.com") 这段时间一直研究怎么才能在 webbrowser中设置referer来路来伪造来路进行刷流量,可是最后研究了半个月最终以失败告终,因为现在的统计代码,比较实际的就是cnzz.com和google adsense自带的统计,他们的统计都是通过js文件进行统计的,这样就形成了伪造来

  • 用javascript替换URL中的参数值示例代码

    今天遇到一个需要用javascript将url中的某些参数替换的需求,想起了不久前从网上淘到了一个parseUrl函数,正好可以借此实现,代码整理如下: 复制代码 代码如下: //分析url function parseURL(url) {     var a = document.createElement('a');     a.href = url;     return {         source: url,         protocol: a.protocol.replace

  • javascript将字符串中的多个空格替换为一个空格的正则实例

    javascript将字符串中的多个空格缩减为一个空格代码实例: 在实际应用中可能有这样的需求,那就是将字符串中的多个空格缩减为一个空格. 下面就是一段能够实现此功能的代码实例. 代码如下: //对字符串扩展 String.prototype.ResetBlank=function(){ var regEx = /\s+/g; return this.replace(regEx, ' '); }; var str="jb51.net is a good site"; console.l

  • javascript编程开发中取色器及封装$函数用法示例

    本文实例讲述了javascript编程开发中取色器及封装$函数用法.分享给大家供大家参考,具体如下: 1.封装$函数 function $(str){ //如果传入的是'#' 则选择id标签 //如果传入的是'.' 则选择所有的类名标签 //如果传入的既不是'#也不是'.' 选择复合标签 //判断传入的值 if(typeof str !='string'){ console.log('传入的参数有误!'); return null; } //获取参数的第一个字母 var firstChar=st

  • 详解JavaScript for循环中发送AJAX请求问题

    首先说,出现这个问题的场景是很少见的,因为有太多更好解决方法.今天搞ajax的时候,一个有趣的地方,,每个迭代中都要发送一个get请求,因为迭代的速度太快,一个请求还没有完成就进行下一个迭代,在chrome和ff上,除最后一个请求外,其它请求都被取消了.所以该怎么办呢?设置延时(不太好)还是其他办法?  办法有很多,比如设置休眠,迭代等等, 我采用的是另外两种解决办法.  一.同步的ajax请求,而ajax请求默认是异步的,所以要设置为false. function creatXMLHttpRe

  • JavaScript过滤字符串中的中文与空格方法汇总

    js 如何过滤字符串里中文或空格呢?方法有很多种,我们可以使用替换与正则表达式来实现,本文向大家介绍两个简单的例子,感兴趣的朋友可以参考一下. 1.javascript过滤空格: function moveSpace() { var str = " abc defg"; alert(str.replace(/[ ]/g, "")); } moveSpace(); 2.javascript过滤中文: var title ="字符串zifuchuan"

  • Javascript技术栈中的四种依赖注入小结

    作为面向对象编程中实现控制反转(Inversion of Control,下文称IoC)最常见的技术手段之一,依赖注入(Dependency Injection,下文称DI)可谓在OOP编程中大行其道经久不衰.比如在J2EE中,就有大名鼎鼎的执牛耳者Spring.Javascript社区中自然也不乏一些积极的尝试,广为人知的AngularJS很大程度上就是基于DI实现的.遗憾的是,作为一款缺少反射机制.不支持Annotation语法的动态语言,Javascript长期以来都没有属于自己的Spri

  • javascript操作ul中li的方法

    本文实例讲述了javascript操作ul中li的方法.分享给大家供大家参考.具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> &l

  • JavaScript获取网页中第一个图片id的方法

    本文实例讲述了JavaScript获取网页中第一个图片id的方法.分享给大家供大家参考.具体如下: 下面的代码通过document.images获取网页中的所有图片,然后获取第一个图片的id属性 <!DOCTYPE html> <html> <body> <img id="klematis lilac" border="0" src="klematis.jpg" width="148"

随机推荐