代码之家  ›  专栏  ›  技术社区  ›  Ben H

正在忽略Azure函数应用程序上的RoutePrefix

  •  1
  • Ben H  · 技术社区  · 6 年前

    看来RoutePrefix在我的函数应用程序中被忽略了。它在控制台输出中显示正在成功读取配置文件:

    info: Host.Startup[0]
          Host configuration file read:
          {
            "version": "2.0",
            "http": {
              "routePrefix": "",
              "maxOutstandingRequests": 20,
              "maxConcurrentRequests": 10,
              "dynamicThrottlesEnabled": false
            }
          }
    [9/3/18 9:33:52 PM] Initializing Host.
    [9/3/18 9:33:52 PM] Host initialization: ConsecutiveErrors=0, StartupCount=1
    [9/3/18 9:33:52 PM] Starting JobHost
    [9/3/18 9:33:52 PM] Starting Host (HostId=fractalnode-520849571, InstanceId=3e35830d-fd9d-4235-ae6a-7d1b356db04a, Version=2.0.12050.0, ProcessId=36292, AppDomainId=1, Debug=False, FunctionsExtensionVersion=)
    [9/3/18 9:33:52 PM] Starting language worker process:node  "C:\Users\ben\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\node\dist/src/nodejsWorker.js" --host 127.0.0.1 --port 50880 --workerId 1f503d98-7661-4a40-83cd-ee19d9a48751 --requestId 9a6ef97a-b016-4554-904b-db43e3f4262c --grpcMaxMessageLength 134217728
    [9/3/18 9:33:52 PM] node process with Id=36800 started
    [9/3/18 9:33:52 PM] Generating 1 job function(s)
    [9/3/18 9:33:52 PM] Found the following functions:
    [9/3/18 9:33:52 PM] Host.Functions.serverTrigger
    [9/3/18 9:33:52 PM]
    [9/3/18 9:33:52 PM] Host initialized (196ms)
    [9/3/18 9:33:52 PM] Host started (203ms)
    [9/3/18 9:33:52 PM] Job host started
    Hosting environment: Production
    Content root path: c:\proj\directalert\www
    Now listening on: http://0.0.0.0:7071
    Application started. Press Ctrl+C to shut down.
    Listening on http://0.0.0.0:7071/
    Hit CTRL-C to exit...
    

    但是它仍然有/api前缀,即使它应该是“”。

    Http Functions:
            serverTrigger: http://localhost:7071/api/{*segments}
    

    此外,将routePrefix更改为“/”或“/apipprefixtest”也没有任何区别。

    知道为什么RoutePrefix被Azure函数运行时忽略了吗?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Rohit Saigal    6 年前

    我看到您使用的是2.0版。v2的架构已更改,因此只需添加“扩展名”,如下所示:

    {
        "version": "2.0",
            "extensions": {
                "http": {
                    "routePrefix": "",
                    "maxOutstandingRequests": 20,
                    "maxConcurrentRequests": 10,
                    "dynamicThrottlesEnabled": false
                }
        }
    } 
    

    在v2中有一些破坏性的更改,所以请查看此文档,您可能会发现一些更相关的更改。-

    Azure Functions Runtime 2.0.12050-alpha breaking changes notice

    以下是上述文章中针对应用程序的链接-

    All application-level extension settings now live under "extensions"