使用JavaScript和C#中获得referer


Posted in Javascript onNovember 14, 2014

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对象
https://3water.com/article/57407.htm

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

Javascript 相关文章推荐
关于JavaScript定义类和对象的几种方式
Nov 09 Javascript
js实现连续英文字符自动换行兼容ie6 ie7和firefox
Sep 06 Javascript
JavaScript操作Oracle数据库示例
Mar 06 Javascript
jQuery实现html表格动态添加新行的方法
May 28 Javascript
js实现模拟银行卡账号输入显示效果
Nov 18 Javascript
Bootstrap每天必学之缩略图与警示窗
Nov 29 Javascript
深入理解Angular4中的依赖注入
Jun 07 Javascript
如何通过非数字与字符的方式实现PHP WebShell详解
Jul 02 Javascript
微信小程序实现流程进度的图样式功能
Jan 16 Javascript
layui table 获取分页 limit的方法
Sep 20 Javascript
谈谈IntersectionObserver懒加载的具体使用
Oct 15 Javascript
支付宝小程序实现省市区三级联动
Jun 21 Javascript
JavaScript window.location对象
Nov 14 #Javascript
详谈JavaScript 匿名函数及闭包
Nov 14 #Javascript
详谈JavaScript内存泄漏
Nov 14 #Javascript
js与C#进行时间戳转换
Nov 14 #Javascript
jquery ui bootstrap 实现自定义风格
Nov 14 #Javascript
使用node.js 制作网站前台后台
Nov 13 #Javascript
JavaScript 作用域链解析
Nov 13 #Javascript
You might like
php递归创建和删除文件夹的代码小结
2012/04/13 PHP
使用php记录用户通过搜索引擎进网站的关键词
2014/02/13 PHP
thinkPHP导出csv文件及用表格输出excel的方法
2015/12/30 PHP
php字符串截取函数mb_substr用法实例分析
2019/06/25 PHP
IE6弹出“已终止操作”的解决办法
2010/11/27 Javascript
js 判断checkbox是否选中的操作方法
2012/11/09 Javascript
jQuery插件kinMaxShow扩展效果用法实例
2015/05/04 Javascript
简单谈谈javascript Date类型
2015/09/06 Javascript
Jquery Mobile 自定义按钮图标
2015/11/18 Javascript
Bootstrap 源代码分析(未完待续)
2016/08/17 Javascript
Vue 2.X的状态管理vuex记录详解
2017/03/23 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
解决Extjs下拉框不显示的问题
2017/06/21 Javascript
vue按需引入element Transfer 穿梭框
2017/09/30 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
微信小程序支付功能 php后台对接完整代码分享
2018/06/12 Javascript
Vue监听页面刷新和关闭功能
2019/06/20 Javascript
微信小程序image图片加载完成监听
2019/08/31 Javascript
JavaScript点击按钮生成4位随机验证码
2021/01/28 Javascript
[05:00]TI9战队采访 - Royal Never Give Up
2019/08/20 DOTA
python服务器与android客户端socket通信实例
2014/11/12 Python
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
python妙用之编码的转换详解
2017/04/21 Python
详解Python函数可变参数定义及其参数传递方式
2017/08/02 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
python使用Plotly绘图工具绘制水平条形图
2020/03/25 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
Python 实例方法、类方法、静态方法的区别与作用
2019/08/14 Python
python实现坦克大战
2020/04/24 Python
Python调用百度OCR实现图片文字识别的示例代码
2020/07/17 Python
纯CSS3实现的8种Loading动画效果
2014/07/05 HTML / CSS
有影响力的人、名人和艺术家的官方商品:Represent
2019/11/26 全球购物
国际贸易专业自荐信
2014/06/10 职场文书
校车安全责任书
2014/08/25 职场文书
2015年派出所民警工作总结
2015/04/24 职场文书
Python自动化之批量处理工作簿和工作表
2021/06/03 Python