如何获取当前带有路由值的url?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取当前带有路由值的url?相关的知识,希望对你有一定的参考价值。

我想通过路由值来获取当前请求的url,以便在到达我的控制器时有一个包含所有需要的值的返回url。

我试过 HttpContext.Request.PathHttpContext.Request.GetDisplayUrl() 但它却返回了类似于:

/Home/Products

其实我需要的是重新获取路由的值。

/Home/Products?id=1

有什么方法可以实现吗?谢谢!

答案

你可以这样做

HttpContext.Request.Path + HttpContext.Request.QueryString

或者为了方便起见,你可以创建一个扩展方法,像这样。

public static string GetCurrentUrl(this HttpRequest httpRequest)
{
    return httpRequest.Path + httpRequest.QueryString;
}

然后得到当前 URL

var url = HttpContext.Request.GetCurrentUrl();

这个 联系 也许对你有帮助。

以上是关于如何获取当前带有路由值的url?的主要内容,如果未能解决你的问题,请参考以下文章

vue知识点-$route和$router

如何在 Angular 中获取当前的路由段(不是完整的 url)

没有使用 navController.currentDestination?.id 获取当前片段 ID

mvc——URL路由_1_定义路由(映射url到动作方法)

如何格式化 Django URL,以便 AJAX 调用将获取不依赖于当前页面但来自表单值的数据库数据?

Symfony2 - 在 TWIG 模板中获取当前 URL 或路由?