Azure Functions 中的不同路由
Different Routes in Azure Functions
我正在使用 Azure Functions,我想创建一个应该对多个路由做出反应的函数。例如“/path1/{param1}”和“/path2/xxx/{param2}”或类似的东西。
有人知道我该如何实现吗?
你应该使用 Function Proxies。
Azure Functions 只允许您将单个路由映射到一个函数。但是,路由可以包含正则表达式。它会给你一点灵活性。您可以找到更多关于它的信息 here.
更简单、更灵活的方法是 Function Proxies。
如@Naren 所示,Azure 函数 route
参数实际上用作后端中的 ASP.NET 路由。这意味着我们还可以利用可选参数来提供与您想要的基本相同的行为。如果您不想使用函数代理,这是一个有用的替代方法。
将路线设置为:
/{path:regex(^path[12]$)}/{param1}/{param2?}
因为 param2
是可选的,如果您调用 /path2/blah
,您将只得到 null
作为 param2
的值。要确保在 path == "path1"
时只有 xxx 可以用于 param1
,您可以在代码中做一个简单的检查。
我正在使用 Azure Functions,我想创建一个应该对多个路由做出反应的函数。例如“/path1/{param1}”和“/path2/xxx/{param2}”或类似的东西。
有人知道我该如何实现吗?
你应该使用 Function Proxies。
Azure Functions 只允许您将单个路由映射到一个函数。但是,路由可以包含正则表达式。它会给你一点灵活性。您可以找到更多关于它的信息 here.
更简单、更灵活的方法是 Function Proxies。
如@Naren 所示,Azure 函数 route
参数实际上用作后端中的 ASP.NET 路由。这意味着我们还可以利用可选参数来提供与您想要的基本相同的行为。如果您不想使用函数代理,这是一个有用的替代方法。
将路线设置为:
/{path:regex(^path[12]$)}/{param1}/{param2?}
因为 param2
是可选的,如果您调用 /path2/blah
,您将只得到 null
作为 param2
的值。要确保在 path == "path1"
时只有 xxx 可以用于 param1
,您可以在代码中做一个简单的检查。