Azure Function v4(net6) OpenAPI路由启动报错,需移除前缀斜杠?
问题解答
是的,你需要移除路由字符串开头的/。
问题根源是路由模板拼接后出现了连续的//:Azure Function App v4中如果配置了全局路由前缀(比如你这里的api),当你给HttpTrigger的路由参数设置开头带/的字符串(比如/blog/{blogId}/post/{postId})时,前缀和路由拼接后就会变成api//blog/{blogId}/post/{postId},触发了路由模板不允许连续斜杠的规则,这就是启动时路由创建错误的直接原因,进而导致主机无法启动抛出The host has not yet started异常。
只需要把路由字符串改成blog/{blogId}/post/{postId},拼接后就会得到合法的api/blog/{blogId}/post/{postId},就能解决这个问题。
内容的提问来源于stack exchange,提问作者Adam Cox
相关产品推荐
相关产品推荐

