Content-type header 未在 ADF v2 中从 Web activity 发送

Content-type header not being sent from web activity in ADF v2

我们使用 ADF v2 中的网络 activity 与基于此规范的 Azure 自动化帐户 API(创建工作)交互 https://docs.microsoft.com/en-us/rest/api/automation/job/create

自 2020 年 9 月 4 日起,PUT 网络调用无法正常工作,因为未发送 header“Content-Type:application/json”。包含 activity 的管道几个月来没有改变,只是突然停止工作并出现错误:

目标自动化操作 - AAS 处理失败:

{
    "code": "UnsupportedMediaType",
    "message": "{\"Message\":\"The request entity's media type 'text/plain' is not supported for this resource.\"}"
}

但是管道的输入请求确实包括 header:

{
    "url": "https://management.azure.com/subscriptions/xxxxx/resourceGroups/xxxxx/providers/Microsoft.Automation/automationAccounts/xxxxx/jobs/55a1bfa2-340c-4120-ba42-43df9e9f4e14?api-version=2017-05-15-preview",
    "method": "PUT",
    "headers": {
        "Content-type": "application/json"
    },
    "body": "{\"properties\":{\"runbook\":{\"name\":\"aas-masterdata-management\"},\"parameters\":{\"Masterdata_Table\":\"RLS\"},\"runOn\":\"\"}}",
    "authentication": {
        "type": "MSI",
        "resource": "https://management.azure.com"
    }
}

到目前为止我已经尝试过:

这些测试中的任何一个都已成功。只是为了确认,我已经 运行 来自 Postman 的相同调用和 Api 文档中包含的其余 api 调试工具,如果我设置内容 header 到邮递员或网络工具中的 text/plain 我得到的错误与 ADF v2 中的错误完全相同。似乎在 ADF v2 的网络调用 activity 中发生了一些变化,它以某种方式将内容 header 硬编码为“text/plain”。

有人面临同样的问题吗?正如我所说,管道定义几个月没有改变,只是几天前停止工作。

ADF平台团队的回答:

我从产品团队那里得到更新,使用“Content-Type”而不是“Content-type”可以解决这个问题。这个可以参考documentation

他们似乎之前接受了“Content-type”,因为它使用那个配置工作了几个月,但现在不行了。所以如果有人遇到同样的问题,这里就是答案。

谢谢。