Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在ASP.NET MVC中获取完整的URL地址?

在ASP.NET MVC中获取完整的URL地址?

提问于 2017-12-26 07:41:01
回答 2关注 0查看 1.4K

如何在ASP.NET MVC中查找动作的绝对URL?是否有内置的方式来获取完整的网址?

我正在寻找像GetFullUrl(""Action"", ""Controller"")那样会返回类似的东西http://www.fred.com/Controller/Action。

我正在寻找这个的原因是为了避免在自动生成的电子邮件中对网址进行硬编码,以便始终可以根据网站的当前位置生成网址。

回答 2

梦飞翔758

发布于 2017-12-26 07:47:05

如果使用明确指定要使用的协议的UrlHelper.Action()的重载,则生成的URL将是绝对的并且是完全限定的,而不是相对的。

我建议编写自定义扩展方法:

/// <summary>

/// Generates a fully qualified URL to an action method by using

/// the specified action name, controller name and route values.

/// </summary>

/// <param name="url">The URL helper.</param>

/// <param name="actionName">The name of the action method.</param>

/// <param name="controllerName">The name of the controller.</param>

/// <param name="routeValues">The route values.</param>

/// <returns>The absolute URL.</returns>

public static string AbsoluteAction(this UrlHelper url,

string actionName, string controllerName, object routeValues = null)

{

string scheme = url.RequestContext.HttpContext.Request.Url.Scheme;

return url.Action(actionName, controllerName, routeValues, scheme);

}

那么你可以简单地在你的视图中使用它:

@Url.AbsoluteAction("Action", "Controller")

习惯痛苦

发布于 2017-12-26 07:43:55

Url.Action有一个重载,它将所需的协议(例如http,https)作为参数 - 如果指定了此参数,则会获得完全限定的URL。

以下是一个在操作方法中使用当前请求协议的示例:

var fullUrl = this.Url.Action(""Edit"", ""Posts"", new { id = 5 }, this.Request.Url.Scheme);

HtmlHelper(@Html)也有一个ActionLink方法的重载,您可以在razor中使用该方法创建一个锚元素,但是它也需要hostName和fragment参数。所以我只是选择再次使用@ Url.Action:

<span>

Copy

<a href='@Url.Action(""About"", ""Home"", null, Request.Url.Scheme)'>this link</a>

and post it anywhere on the internet!

</span>

和开发者交流更多问题细节吧,去 写回答
相关文章
在ASP.NET MVC 中获取当前URL、controller、action
一、URL的获取很简单,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.AbsoluteP
欢醉
2018/01/22
2.8K0
ASP.NET Core获取请求完整的Url
由于.NET Core相关接口重构,现在无法在项目中直接获取当前请求的完整的Url地址了,需要我们自己把Microsoft.AspNetCore.Http命名空间下类名为HttpRequest的相关方法拼接获取,如下所示。
追逐时光者
2021/02/25
8.1K1
ASP.NET Core获取请求完整的Url
获取URL地址中的GET参数
/*-----------------实现1--------------------*/ function getPar(par){ //获取当前URL var local_url = document.location.href; //获取要取得的get参数位置 var get = local_url.indexOf(par +"="); if(get == -1){ return false; } //截取字符串
似水的流年
2018/01/14
7.2K0
获取URL地址中的GET参数
/*-----------------实现1--------------------*/ function getPar(par){ //获取当前URL var local_url = document.location.href; //获取要取得的get参数位置 var get = local_url.indexOf(par +"="); if(get == -1){ return false; } //截取字符串
似水的流年
2018/01/18
7.6K0
PHP 获取 IP 地址形式的完整 URL 页面网址
PHP 获取包含端口号的完整 URL 中,$_SERVER 有些写法只能获取域名形式的 URL ,采用 IP 地址的 URL 是获取不到的。
Yangsh888
2022/03/23
2.4K0
js获取url地址中的参数
<script type="text/javascript"> function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) return r[2]; return null; } </script
磊哥
2018/05/08
19.8K0
获取URL地址中的GET参数
/*-----------------实现1--------------------*/ function getPar(par){ //获取当前URL var local_url = document.location.href; //获取要取得的get参数位置 var get = local_url.indexOf(par +"="); if(get == -1){ return false; } //截取字符串
似水的流年
2019/12/11
6.8K0
如何在ASP.NET MVC中获取客户端的IP地址?
大家好,又见面了,我是你们的朋友全栈君。 本文翻译自:How can I get the client’s IP address in ASP.NET MVC? I’m totally new to
全栈程序员站长
2022/09/15
8.1K0
php获取完整url
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] ==
joshua317
2018/04/16
5.4K0
获取当前url地址
<?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br />"; //获取网页地址 echo $_SERVER['PHP_SELF']."<br />";
九霄道长
2021/03/02
4.4K0
在ASP.NET MVC中通过URL路由实现对多语言的支持
对于一个需要支持多语言的Web应用,一个很常见的使用方式就是通过请求地址来控制界面呈现所基于的语言文化,比如我们在表示请求地址的URL中将上语言文化代码(比如en或者en-US)来指导服务器应该采用怎
蒋金楠
2018/01/15
1.9K0
在ASP.NET MVC中通过URL路由实现对多语言的支持
PHP获取当前页面(网页)完整URL链接地址代码
示例链接:https://www.xxx.com/example.php?id=1 获取完整URL,包含URL参数 最终获取的链接:https://www.xxx.com/example.php?id
一身执念
2021/07/27
3K0
PHP获取当前页面(网页)完整URL链接地址代码
PHP中获取当前页面的完整URL
javascript实现: top.location.href 顶级窗口的地址 this.location.href 当前窗口的地址 PHP实现: #测试网址: http://local
joshua317
2018/04/16
4K0
在 Web 中获取 MAC 地址
两年前做的一个项目,当时客户的需求还没有完成,客户就提出了解决安全的问题,这是当时写的一个记录,分享到这里。
码农UP2U
2020/08/26
16.4K4
PHP中获取当前页面的完整URL
#测试网址: http://localhost/blog/testurl.php?id=5 //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br>"; #
用户8099761
2023/05/10
2.5K0
图片url地址的生成获取方法
在写博客插入图片时,许多时候需要提供图片的url地址。作为菜鸡的我,自然是一脸懵逼。那么什么是所谓的url地址呢?又该如何获取图片的url地址呢?
全栈程序员站长
2022/11/08
17.4K0
图片url地址的生成获取方法
在 ASP.NET Core 中安装 MVC
到目前为止,我们在本系列视频中使用的 ASP.NET Core 项目是使用“空”项目模板生成的。目前这个项目没有设置和安装 MVC。
角落的白板报
2019/05/15
1.7K0
PHP获取域名等URL地址
参考URL:https://www.w3h5.com/PHP-URL.php?num=123 以下是输出结果: <?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']
德顺
2019/11/13
9.5K0
封装方法,获取url地址上的参数
https://jiangsihan.cn/?id=123&name=hhh getQueryVariable(variable) { var query = window
江一铭
2022/06/17
1.5K0
封装方法,获取url地址上的参数
点击加载更多

相似问题

node.js获取完整的url路径的问题?

21.7K

nginx配置?

2365

WordPress的设置中,WordPress地址URL和站点地址URL两项配置有误 导致无法访问?

030

设置WordPress地址URL后报错?

183

get_anchor_url 获取推流地址 报错 204004,是怎么回事?

2659
相关问答用户
腾讯云TDP | 先锋会员擅长2个领域
某公司 | 程序员擅长1个领域
擅长2个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档