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.PhysicalPathD:/Projects/Solution/web/News/Press/Content.aspx
System.IO.Path.GetDirectoryName(Request.PhysicalPath)D:/Projects/Solution/web/News/Press
Request.PhysicalApplicationPathD:/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.AbsoluteUrihttp://localhost:1897/News/Press/Content.aspx/123?id=1
Request.Url.Schemehttp
Request.Url.Hostlocalhost
Request.Url.Port1897
Request.Url.Authoritylocalhost: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對象
//www.VeVB.COm/article/57407.htm
怎麼樣,是不是已經學會了在javascript和C#中獲取頁面的referer了呢?如有什麼疑問,也可以聯繫我