使用JavaScript和C#中获得referer

2022-01-12,

经常使用其他脚本语言(ASP ASP.NET PHP等)获取页面的浏览来源,今天我们来研究下使用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#

复制代码 代码如下:
///

/// 获取HTTP请求的Referer
///

/// Referer为空时是否返回Host(网站首页地址)
/// string
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://www.ufcn.cn/article/57407.htm

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

以上就是使用JavaScript和C#中获得referer的详细内容,更多请关注本站其它相关文章!

《使用JavaScript和C#中获得referer.doc》

下载本文的Word格式文档,以方便收藏与打印。