0

当在 Teams Shifts 中查询具有大量班次的时间表时(例如,一个月内有 100 多个班次 - 这就像一个每天工作 30 人的团队),我们不断收到 504 错误(网关超时)

我们已经尝试使用 TOP 并限制我们返回的天数以减少请求大小,但是用于 Shifts 的 GRAPH API 在搜索和过滤能力方面非常有限

请求示例(来自 MS FLOW,通过自定义连接器)。

{
  "inputs": { 
    "host": { 
      "connection": { 
        "name": "@parameters('$connections')['shared_medicus365-5fconnector-5f455cfd1c6d1a89ed-5fce5269b428f1d481']['connectionId']" 
      }
    },
    "method": "get",
    "path": "/beta/teams/@{encodeURIComponent(items('fe_team')?['TeamID'])}/schedule/shifts",
    "queries": { 
      "$filter": "sharedShift/startDateTime ge @{outputs('composeStartOfDay')} and sharedShift/endDateTime le @{body('6monthsAhead')}",
      "$top": "1000"
    },
    "authentication": "@parameters('$authentication')"
  },
  "metadata": { 
    "flowSystemMetadata": { 
      "swaggerOperationId": "ListTeamsShifts"
    }
  }
}

我们正在使用 Microsoft 文档中描述的 EXACT 定义的方法。

我们收到来自 GRAPH 的 504 响应 - 网关超时(再次),只要消息大小超过几周的 Shift 值。

{
  "error": {
    "code": "UnknownError",
    "message": "",
    "innerError": {
      "request-id": "437ad3be-be70-4bbe-b972-f9e24b588b5c",
      "date": "2019-09-03T19:01:57"
    }
  }
}
4

0 回答 0