Azure 函数 - 将空字符串映射为函数的路由

Azure functions - Map empty string as route for a function

有没有办法将空字符串映射为 Azure 函数的路由。就像可以说当我点击 https://example.org/api (空字符串)时,该函数将被点击。我试过如下,但没有用。

[FunctionName("Default")]
public static async Task<IActionResult> Run(
   [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "")] HttpRequest req,
    ILogger log)
{
       ...
}

Customize the HTTP endpoint:

By default, all function routes are prefixed with api. You can also customize or remove the prefix using the extensions.http.routePrefix property in your host.json file. The following example removes the api route prefix by using an empty string for the prefix in the host.json file.

# host.json

{
    "extensions": {
        "http": {
            "routePrefix": ""
        }
    }
}

事实证明,没有直接的方法可以做到这一点。 PFB 在 运行 函数解决方案之后从控制台中提取的带有错误消息的屏幕截图。

不过,可以使用函数代理来实现。将以下 json 添加到您的 proxies.json。因此,这种方式假设您正在点击“http://localhost:7071/api/”,它将落在您指定的函数上。

{
  "proxies": {
    "EmptyRouteProxy": {
      "matchCondition": {
        "route": "/"
      },
      "backendUri": "http://localhost:7071/api/SampleFunc"
    }
  }
}