我正在寻找这个 javascript 的等价物
window.location.origin
但是服务器端,同时构建 mvc 页面。
例如,如果你在这里 http://website.com/123,它会返回
http://website.com
重要的是我有“http://”部分
我正在寻找这个 javascript 的等价物
window.location.origin
但是服务器端,同时构建 mvc 页面。
例如,如果你在这里 http://website.com/123,它会返回
http://website.com
重要的是我有“http://”部分
我是
string url = Request.Url.PathAndQuery.length > 1
? Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, string.Empty)
: url;
保留您的 Http/Https、端口(如果适用)和主机名/IP。
更新为说明 PathAndQuery 长度为 1。
你可以试试
@String.Format("{0}://{1}", Request.Url.Scheme, Request.Url.Authority)
或者
@String.Format("{0}://{1}", Request.Url.Scheme, Request.Url.Host)
授权将包括端口号
我认为您正在寻找Request.Url或 RawUrl。
Request.Url 的Uri.Scheme将为您提供有关 http/https 差异的信息。
javascript 中的 window.location.origin 返回当前 url 的协议、端口(如果有)、域和扩展名。
如果您想从 URL 获取相同的信息,接受的答案将提供给您。
如果您想要相同的行为,即一段 javascript 正在调用您的服务器方法并且您想知道它从哪里调用,您可以检查 HttpRequest.URLReferrer。然而,这很容易被欺骗,因此不可靠。