如何在Azure函数中设置路由参数可选

fjaof16o  于 2023-04-22  发布在  其他
关注(0)|答案(3)|浏览(120)

如何在Azure函数中设置路由参数可选

public static async Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "ResolveKey/{key}/{resolver}")]HttpRequestMessage req, TraceWriter log, string key,string resolver= "default")

在上面的代码中,我试图通过设置默认值string resolver= "default"来使resolver参数可选。代码编译和运行良好,但URL总是希望resolver参数存在,否则我会得到404。
我想在上面的代码中把resolver参数设为可选的,有什么办法吗?

mspsb9vt

mspsb9vt1#

您可以在管线模板本身中表示参数是可选的。
对于上面的路由,您可以将模板更改为以下内容:

ResolveKey/{key}/{resolver?}

您可以在此处找到有关可选路由和默认值的更多信息

ntjbwcob

ntjbwcob2#

Azure Functions现在支持正则表达式。您可以将路由模板更改为

ResolveKey/{key}/{*resolver}
h79rfbju

h79rfbju3#

前面的答案对我很有帮助,但如果我看到一个例子,我会花更少的时间。在这里,我为你提供一个:

相关问题