参考资料:

前几天在找得到当前网站除去参数的js情势,结果自身会的依然唯有window.location.href

U奥迪Q7L的获得相当粗略,ASP.NET通用:
【1】
获取 完整url
(协议名+域名+虚拟目录名+文件名+参数)

U卡宴L的得到很简短,ASP.NET通用:

*【1】获取 完整url 
(协议名+域名+虚拟目录名+文件名+参数)*

string url=Request.Url.ToString();

【2】取得 虚拟目录名+页面名+参数:

string url=Request.RawUrl;
(或 string 
url=Request.Url.PathAndQuery;)

【3】获取 
虚拟目录名+页面名:
string url=HttpContext.Current.Request.Url.AbsolutePath;
(或 
string url= HttpContext.Current.Request.Path;)

【4】获取 域名:
string 
url=HttpContext.Current.Request.Url.Host;

【5】获取 参数:
string url= 
HttpContext.Current.Request.Url.Query;

【6】获取 端口:
Request.Url.Port

二、当前controller、action的获取
RouteData.Route.GetRouteData(this.HttpContext).Values[“controller”]
RouteData.Route.GetRouteData(this.HttpContext).Values[“action”]

RouteData.Values[“controller”]
RouteData.Values[“action”]

只要在视图中能够用
ViewContext.RouteData.Route.GetRouteData(this.Context).Values[“controller”]
ViewContext.RouteData.Route.GetRouteData(this.Context).Values[“action”]

ViewContext.RouteData.Values[“controller”]
ViewContext.RouteData.Values[“action”]

Example
there’s an given url:

查到的一篇博文:

string url=Request.Url.ToString();

获得整个url地址:

【2】赢得 虚拟目录名+页面名+参数:

在页面(cstml)中 

写的挺全的。。。JS和c#的url相关都写了,以后也不用再开个console举行三个多个测试了

string url=Request.RawUrl;
(或 string
url=Request.Url.PathAndQuery;)

Microsoft.AspNetCore.Http.Extensions.UriHelper.GetDisplayUrl(Context.Request);

**********************************************************************************************************************************************************************

【3】获取
虚拟目录名+页面名:
string url=HttpContext.Current.Request.Url.AbsolutePath;
(或
string url= HttpContext.Current.Request.Path;)


Controller 中

当中内容:

【4】获取 域名:
string
url=HttpContext.Current.Request.Url.Host;

Microsoft.AspNetCore.Http.Extensions.UriHelper.GetDisplayUrl(Request);

一 js

怎么着收获Url的host以及是还是不是是http,中获取当前U凯雷德L。【5】获取 参数:
string url=
HttpContext.Current.Request.Url.Query;

得到请求的法子(scheme:http/https):http

 

【6】获取 端口:
金沙注册送58,Request.Url.Port

In
asp.net 4.6 -> Request.Url.Scheme

先看3个示范

二、当前controller、action的获取
RouteData.Route.GetRouteData(this.HttpContext).Values[“controller”]
RouteData.Route.GetRouteData(this.HttpContext).Values[“action”]

RouteData.Values[“controller”]
RouteData.Values[“action”]

in .net
core -> Context.Request.Scheme (cshtml) , in Controller ->
Request.Scheme

用javascript获取url网站消息

如若在视图中能够用
ViewContext.RouteData.Route.GetRouteData(this.Context).Values[“controller”]
ViewContext.RouteData.Route.GetRouteData(this.Context).Values[“action”]

ViewContext.RouteData.Values[“controller”]
ViewContext.RouteData.Values[“action”]

赢得域名(不带端口号)[Get
the host]:

<script type=”text/javascript”>
document.write(“location.host=”+location.host+”<br>”);
document.write(“location.hostname=”+location.hostname+”<br>”);
document.write(“location.href=”+location.href+”<br>”);
document.write(“location.pathname=”+location.pathname+”<br>”);
document.write(“location.protocol=”+location.protocol+”<br>”);
</script>

In
asp.net 4.6 -> Request.Url.Host

实践 用javascript获取url网站音讯 代码效果如下

in .net
core -> Context.Request.Host.Host (cshtml) , in Controller ->
Request.Host.Host

location.host=www.vnde.cn
location.hostname=www.vnde.cn
location.href=
location.pathname=/bc/2008/0306/article_1860.html
location.protocol=http:

得到域名(带端口号)[Get
the host]: localhost:4800

 

In
asp.net 4.6 ->

详尽介绍 window.location方法得到U猎豹CS陆L

in .net
core -> Context.Request.Host.Value (cshtml) , in Controller ->
Request.Host.Value

 

获得路线(Get
the path): /account/login

集合营源一定符 (Uniform Resource Locator, U宝马X3L)
完整的U汉兰达L由那多少个部分组成:

In
asp.net 4.6:

scheme://host:port/path?query#fragment

In .net
core: @Context.Request.Path (cshtml)

 

收获端口号(Get
port): 4800 (if a url contains port)

scheme:通讯协议

In
asp.net 4.6: Request.Url.Port

常用的http,ftp,maito等

In .net
core: @Context.Request.Host.Port (cshtml) , in Controller ->
Request.Host.Port

 

host:主机

服务器(Computer)域名系统 (DNS) 主机名或 IP 地址。

 

port:端口号

平头,可选,省略时行使方案的私下认可端口,如http的默许端口为80。

 

path:路径

由零或多个”/”符号隔绝的字符串,1般用来代表主机上的三个目录或文件地方。

 

query:查询

可选,用于给动态网页(如运用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等本领构建的网页)传递参数,可有两个参数,用”&”符号隔绝,各样参数的名和值用”=”符号隔开分离。

 

fragment:音讯片断

字符串,用于内定互联网能源中的片断。例如三个网页中有多个名词解释,可选取fragment直接固定到某一名词解释。(也称为锚点.)

 

示例: 

1, window.location.href

全体U凯雷德l字符串(在浏览器中正是总体的地址栏)

返回值:

 

2,window.location.protocol

U纳瓦拉L 的商事部分

返回值:http:

 

3,window.location.host

UQX56L 的主机部分,

返回值:www.2astudio.com

 

4,window.location.port

U揽胜L
的端口部分。要是应用暗中认可的80端口(update:尽管增加了:80),那么再次来到值并不是暗许的80而是空字符。

本例重临值:空

 

5,window.location.pathname

UCR-VL 的路径部分(就是文件地方)

返回值:/view.asp

 

6,window.location.search

查询(参数)部分。除了给动态语言赋值以外,大家壹致能够给静态页面,并利用javascript来获得信任应的参数值

返回值:?id=209

 

7,window.location.hash

锚点

返回值:#cmt1323

 

二 C#

上边那张表便是种种跟 Browser Request 的网站相关的品质与用法:

 

网址:

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

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

相关文章

网站地图xml地图