0

有没有办法将空字符串映射为 Azure 函数的路由。就像我说当我点击https://example.org/api(空字符串)时,该函数将被命中。我已经尝试如下,但它没有工作。

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

2 回答 2

0

自定义 HTTP 端点

默认情况下,所有函数路由都以 api 为前缀。您还可以使用 host.json 文件中的 extensions.http.routePrefix 属性自定义或删除前缀。以下示例通过使用空字符串作为 host.json 文件中的前缀来删除 api 路由前缀。

# host.json

{
    "extensions": {
        "http": {
            "routePrefix": ""
        }
    }
}
于 2021-03-16T13:48:22.530 回答
0

事实证明,没有直接的方法可以做到这一点。PFB 运行 Functions 解决方案后从控制台选择的带有错误消息的屏幕截图。 函数路由必须是非空的

但是,可以使用 Function 代理来实现。将以下 json 添加到您的 proxies.json。所以,这种方式可以说你正在点击“http://localhost:7071/api/”,它将登陆你指定的函数。

{
  "proxies": {
    "EmptyRouteProxy": {
      "matchCondition": {
        "route": "/"
      },
      "backendUri": "http://localhost:7071/api/SampleFunc"
    }
  }
}
于 2021-03-26T17:48:45.567 回答