gpt4 book ai didi

c# - 如何在 Startup.cs 文件中获取 ASP.NET MVC 应用程序的基本 url?

转载 作者:太空狗 更新时间:2023-10-29 19:48:16 35 4
gpt4 key购买 nike

我正在寻找一种方法来获取我的 Web 应用程序的根 URL,这样我就不必在需要的地方使用硬编码字符串。

到目前为止,我一直试图以这种方式获取它:

var request = HttpContext.Current.Request;

var url = string.Format("{0}://{1}",
request.Url.Scheme,
request.Url.Authority);

但不幸的是,当从 Startup 类执行时,这并没有给我想要的结果,我得到了 http://127.0.0.1

最佳答案

给定一个完整的 URL,例如“http://example.com/MyApplication/Controller/Action”,您可以从 System.Web.Hosting.HostingEnvironment.ApplicationHost 对象中获取其中的一些信息。您可以获得以下内容:

ApplicationVirtualPath -> "/MyApplication"SiteName => "默认网站"但是,您将无法在实际请求进入之前获取域名。这是因为 IIS 网站可以接受对许多不同域的请求,其中一些域只能通过 DNS 获知,并且从未在任何地方配置过。

例如,您的网站可以响应 mydomain.com 和 www.mydomain.com。您要放入链接中的正确选项是什么?

您可以将 IIS 网站配置为仅接受请求特定主机但无法从 ASP.NET 应用程序检索的连接。

引用:Getting a web application's URI during startup

关于c# - 如何在 Startup.cs 文件中获取 ASP.NET MVC 应用程序的基本 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34336127/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com