在我的自定义 Integromat 应用程序中使用不同的错误结构进行错误处理

Error handling with different error structures in my custom Integromat app

我有一个 API returns 不同端点和状态代码的不同错误结构。有时它是一个字符串,有时是一个复杂的对象或数组。由于 Integromat 要求所有错误处理都在 Base 中的一个位置完成,而不是在模块中完成,我该如何正确实现它? 案例 1

  "data": {
    "error": {
      "user_ids.0": [
        "The user_ids.0 must be an integer."
      ]
    }
  }

案例二

  "data": {
    "error": "Not found"
  }

可以使用 JavaScript 函数处理响应并获取错误消息。请看下面的例子:

基地:

{
"response": {
        "output": "...",
        "error": "{{parseErrorMessage(body)}}"
    }
}
function parseErrorMessage(body) {
  if ('string' === typeof body.data) return body.data;

  ...
}

自定义 JS 默认处于禁用状态,请联系我们的支持人员以启用它。参考:https://docs.integromat.com/apps/app-structure/iml-functions