zoukankan      html  css  js  c++  java
  • asp.net core获取当前请求的完整url

    asp.net core获取当前请求的完整url

    首先需要在控制器项目中使用NuGet引入 Microsoft.AspNetCore.Http.Abstractions包。

    然后有两种获取当前URL的方式。

    方法1,在控制器里面,string displayUrl = HttpContext.Request.GetDisplayUrl();

    方法2,定义一个HttpRequest的扩展类。

    using Microsoft.AspNetCore.Http.Extensions;
    
    namespace demo1.tools
    {
        public static class HttpRequestExtensions
        {
            public static string GetAbsoluteUri(this HttpRequest request)
            {
                return new StringBuilder()
                    .Append(request.Scheme)
                    .Append("://")
                    .Append(request.Host)
                    .Append(request.PathBase)
                    .Append(request.Path)
                    .Append(request.QueryString)
                    .ToString();
            }
        }
    }

    调用方式:

    方法1,直接调用 Request.GetDisplayUrl()方法。
    string displayUrl = HttpContext.Request.GetDisplayUrl();
    方法2 调用扩展方法
    string requestUrl = HttpRequestExtensions.GetAbsoluteUri(HttpContext.Request);

    using demo1.tools;
    using Microsoft.AspNetCore.Http.Extensions;
    
    namespace demo1.xTwoMvc.Controllers
    {
        public class HomeController : Controller
        {
            public IActionResult Index()
            {
                //方法1 直接调用Request.GetDisplayUrl()方法
                string displayUrl = HttpContext.Request.GetDisplayUrl();  
                //方法2 调用扩展方法
                string requestUrl = HttpRequestExtensions.GetAbsoluteUri(HttpContext.Request);
                base.ViewData["displayUrl"] = displayUrl;
                base.ViewData["requestUrl"] = requestUrl; 
                return View();
            }
        }
    }


  • 相关阅读:
    Apache、NGINX支持中文URL
    JS中关于clientWidth offsetWidth scrollWidth 等的含义
    设置apache登陆密码验证
    通过java代码访问远程主机
    win7
    Netty从没听过到入门 -- 服务器端详解
    分块分段
    数论-佩尔方程
    数论-毕达哥拉斯三元组
    HDU 5613-Baby Ming and Binary image
  • 原文地址:https://www.cnblogs.com/yyee/p/12825802.html
Copyright © 2011-2022 走看看