【问题标题】:ASP.NET Core 3.1 Routing for Razor PagesRazor 页面的 ASP.NET Core 3.1 路由
【发布时间】:2020-05-06 02:25:29
【问题描述】:
如何配置路由以使不同用户在访问网站时可以使用自己不同的 url?我想在初次访问时显示他们的徽标和其他自定义设置。
类似这样的:
mysite.com\customer1
mysite.com\customer2
我更喜欢以下,但我相信这是不可能的。
customer1.mysite.com
customer2.mysite.com
他们是实现这一意图的更好方法吗?
【问题讨论】:
标签:
asp.net-core
routing
razor-pages
【解决方案1】:
这并不是真正的路由问题。
您可以有多个子域指向同一个应用程序,然后使用middleware 来解析使用了哪个域并相应地设置值:
public class DomainResolverMiddleware
{
private readonly RequestDelegate _next;
public DomainResolverMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext context)
{
var host = context.Request.Host.ToString();
// do whatever
await _next(context);
}
}