代码之家  ›  专栏  ›  技术社区  ›  Banuka Sonel

当“重试”设置为“无”时,Azure Logic应用程序APIM连接器重试

  •  0
  • Banuka Sonel  · 技术社区  · 1 年前

    我们有一个逻辑应用程序,它使用APIM调用后端API,以使用POST请求创建记录。我们发现后端创建的一些记录是重复的。当我们深入研究这个问题时,我们可以看到逻辑应用程序对APIM只有一个请求。要调用APIM,我们使用APIM连接器,并在操作中将重试策略设置为无。

    但是,当我们检查Azure APIM日志时,我们可以看到大约在同一时间有两个请求,其中一个请求失败,响应代码为0“客户端连接意外关闭”。我们无法弄清楚是什么触发了APIM中的第二个请求,因为逻辑应用程序中的重试设置为None。在后端日志中,我们收到了两个请求。

    当逻辑应用程序无法与后端通信时,我们预计它会出现错误。

    这是JSON有效载荷

    {
      "orders": [
        {
          "caller": {
            "clientId": "SIMREFNSW2"
          },
          "shipper": {
            "clientId": "SPECSOL"
          },
          "consignee": {
            "clientId": "1996DAN"
          },
          "details": [
            {
              "commodity": "FRPPLT",
              "description": "Frozen",
              "volume": 18,
              "pieces": 16,
              "weight": 9907,
              "pallets": 9,
              "piecesUnits": "QTY",
              "volumeUnits": "PLT",
              "weightUnits": "KG",
              "palletUnits": "PLS",
              "temperatureControlled": "True",
              "temperatureUnits": "C"
            }
          ],
          "traceNumbers": [
            {
              "traceType": "C",
              "traceNumber": "PICK0002",
              "user2": "1",
              "user3": "2"
            },
            {
              "traceType": "P",
              "traceNumber": "889926"
            }
          ],
          "pickUpBy": "2024-07-29T13:15:00",
          "pickUpByEnd": "2024-07-29T13:15:00",
          "deliverBy": "2024-08-02T00:00:00",
          "deliverByEnd": "2024-08-02T00:00:00",
          "serviceLevel": "RL",
          "siteId": "SITE6",
          "xrefcode": {
            "consigneeid": "1996d",
            "shipperid": "spec001",
            "otherContactId": "simua"
          },
          "userFields": {
            "user2": "PICK0002",
            "user10": "0"
          }
        }
      ]
    }
    
    0 回复  |  直到 1 年前