ste*_*wpf 5 c# httpcontext asp.net-core asp.net-core-webapi
我想知道Web API 控制器HttpContext.Request.Path和Web API 控制器之间有什么区别?HttpContext.Request.PathBase我阅读了文档,但不明白预期的差异应该是什么,即使在测试了这两个属性之后:
public async Task<ActionResult<string>> PostItem(ItemPostRequest itemPostRequest)
{
// Output: Path is: '/api/items'
Debug.WriteLine($"Path is: '{HttpContext.Request.Path}'");
// Output: PathBase is: ''
Debug.WriteLine($"PathBase is: '{HttpContext.Request.PathBase}'");
// [...]
}
Run Code Online (Sandbox Code Playgroud)
什么时候PathBase非空?我用的是.NET 5.0。
正如卡米洛所写,它是关于app.UsePathBase("/some-path")。
添加app.usePathBase("/mysite1")一个需要调用/mysite1/api/items而不是/api/items,然后它看起来像这样:
Path is: '/api/items'
PathBase is: '/mysite1'
Run Code Online (Sandbox Code Playgroud)
显然 PathBase 可用于在一台主机上托管多个站点/API。