正如here所指出的,在URL中使用双斜杠是有效的。
我有一个ASP Net Core项目,它使用属性路由,一个名为GroupController
的控制器用于处理Group
上的操作,以及一个PUT
ting RulePart
的操作由ImportId
类型string
指定的组。
[Route("/api/[controller]")]
public class GroupController : ControllerBase
{
[HttpPut("{groupImportId?}/ruleParts")]
public async Task<IActionResult> PutRuleParts(string groupImportId, [FromBody]List<RulePartDto> ruleParts)
{
return null; //actual code ommitted for brevity
}
}
http://localhost/api/group/groupImportId/ruleParts
之类的网址符合预期。
我希望null groupImportId
,即http://localhost/api/group//ruleParts
之类的网址会调用相同的操作,因为groupImportId
路由参数已被标记为可选。但是,在尝试调用此URL时,我收到404错误,并且未执行操作。
是否有可能匹配ASP Net Core中的空URL路径段?