代码之家  ›  专栏  ›  技术社区  ›  LiamGu

本地主机上的Azure功能代理404

  •  0
  • LiamGu  · 技术社区  · 4 年前

    我有一个Azure函数应用程序,在URL上有一个函数 http://localhost:7072/api/create-room 以及其他功能。这个特殊的函数是 HTTPTrigger 允许匿名访问并接受 GET 动词:

    [HttpTrigger(AuthorizationLevel.Anonymous, "get")]
    

    proxies.json 文件,仅用作函数代理。我的代理功能正在端口上运行 7071

    {
        "$schema": "http://json.schemastore.org/proxies",
        "proxies": {
          "chatNegotiate": {
            "matchCondition": {
              "route": "/api/chat/negotiate",
              "methods": [
                "POST"
              ]
            },
            "backendUri": "%chat_api%/api/BeginNegotiate"
          },
          "chatMessages": {
            "matchCondition": {
              "route": "/api/chat/messages",
              "methods": [
                "POST"
              ]
            },
            "backendUri": "%chat_api%/api/PostMessage"
          },
          "createRoom": {
            "matchCondition": {
              "route": "/api/create-room",
              "methods": [
                "GET"
              ]
            },
            "backendUri": "%session_api%/api/CreateRoom"
          }
        }
    }
    

    当这两个功能应用程序都部署到Azure时,一切都像做梦一样工作。我可以提出请求,它们被转发,请求被回复。一切都很光荣。

    但是,当我在本地运行这些函数时,请求永远不会从代理转发,代理返回404。我可以点击在本地运行的其他函数应用程序上的函数 7072

    代理本身返回:

    [30/05/2020 18:24:30] Host lock lease acquired by instance ID '0000000000000000000000002D5B6BEA'.
    [30/05/2020 18:24:34] Executing HTTP request: {
    [30/05/2020 18:24:34]   "requestId": "9004b8e2-f208-4a98-8b48-6f85bca41281",
    [30/05/2020 18:24:34]   "method": "GET",
    [30/05/2020 18:24:34]   "uri": "/api/create-room"
    [30/05/2020 18:24:34] }
    [30/05/2020 18:24:34] Executed HTTP request: {
    [30/05/2020 18:24:34]   "requestId": "9004b8e2-f208-4a98-8b48-6f85bca41281",
    [30/05/2020 18:24:34]   "method": "GET",
    [30/05/2020 18:24:34]   "uri": "/api/create-room",
    [30/05/2020 18:24:34]   "identities": [],
    [30/05/2020 18:24:34]   "status": 404,
    [30/05/2020 18:24:34]   "duration": 15
    [30/05/2020 18:24:34] }
    

    https://chsakell.com/2019/02/03/azure-functions-proxies-in-action/ ,这应该可以正常工作。

    0 回复  |  直到 4 年前
        1
  •  4
  •   LiamGu    4 年前

    我终于解决了这个问题。

    你需要确保它设置为 .

    右击 proxies.json &燃气轮机;点击 &燃气轮机;套 复制到输出目录 总是复制 .