You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Logic App中保留响应Gzip压缩并避免406错误

Logic App HTTP操作保留Gzip压缩响应的解决办法

问题根源

当勾选HTTP操作的「禁用自动解压缩」选项时,Logic App会自动移除请求中的Accept-Encoding头,但目标API要求必须携带该头才会返回有效响应;而如果不勾选该选项,Logic App会自动解压响应体,无法保留原始Gzip格式。

可行解决方案

1. 改用「HTTP with Azure AD」操作

原生HTTP操作存在自动移除Accept-Encoding头的限制,但「HTTP with Azure AD」操作没有这个问题:

  • 在工作流中添加「HTTP with Azure AD」操作
  • 配置目标API的请求URL、请求方法等基础参数
  • 在请求头中手动添加Accept-Encoding: gzip
  • 勾选操作设置里的「禁用自动解压缩」选项
  • 执行后,该操作的输出响应体将保持原始Gzip压缩状态,可直接用于后续存储或处理步骤

2. 创建自定义连接器

如果必须使用原生HTTP操作,可通过自定义连接器绕过限制:

  • 在Azure门户中创建自定义连接器,配置目标API的请求规则
  • 在连接器的请求头配置中固定添加Accept-Encoding: gzip
  • 在连接器的操作设置里启用「禁用自动解压缩」
  • 在Logic App中调用该自定义连接器,此时既能满足API的头要求,又能获取未解压的Gzip响应体

3. 代码动作二次压缩(备选方案)

若上述方案无法实施,可通过代码动作间接实现:

  • 不勾选HTTP操作的「禁用自动解压缩」,让Logic App自动解压响应体
  • 添加「Azure Functions」或「Inline Code」动作,将解压后的响应体重新压缩为Gzip格式
  • 注意:此方法会额外占用计算资源,仅作为最后备选

验证方式

执行工作流后,检查操作输出:

  • 确认响应头包含Content-Encoding: gzip
  • 将响应体保存为.gz文件,尝试解压验证内容完整性

内容的提问来源于stack exchange,提问作者tengl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 20:00:08