【发布时间】:2021-02-24 21:38:41
【问题描述】:
URL 模式不带前导 / 字符,它不是 URL 路径的一部分。 当请求 URL 路径与 URL 模式匹配时,请求将被转发到端点函数,生成响应。 (Martin Freeman。Pro ASP.NET Core 3。第 284 页。最后一段。)
这是关于通过 app.UseEndpoint 为 EndpointMiddleware 配置映射的信息(参见下面的示例)
首先,为什么'/'不是路径的一部分? HttpContext.Request.Path 以'/'开头。
其次,这些代码和使用所有其他模式的代码以“/”开头的代码与不带“/”的代码的工作方式相同。是作者弄错了还是我看不懂?
app.UseEndpoints(rb =>
{
rb.Map("/{var1}/{*others}", async (ctx) =>
{
await ctx.Response.WriteAsync($"{ctx.Request.RouteValues["var1"]}");
});
});
【问题讨论】:
标签: c# .net asp.net-core url routes