Ubuntu 21.04 上的 cURL 通常不显示 JSON 响应主体

Ubuntu 21.04 上的 cURL 通常不显示 JSON 响应主体

我刚刚安装了 Ubuntu 21.04。我很惊讶地发现,安装的 curl 版本在很多情况下不显示 JSON 响应主体...我仍在试图理解为什么有时会显示 JSON 主体,而有时却不显示。在某些情况下,添加到-H "Accept: application/json"调用中确实会显示主体,但我以前从未需要指定这一点。

不幸的是,我发现这个问题的 API 是公司内部的,所以我无法发布具体的例子,但我会说它们是托管在 AWS ApiGateway 上的 API,以防有帮助。GET 响应主体是 JSON,在 Debian 和 macOS 上都能正常显示。

  • 我的 Ubuntu 电脑上的 curl 版本是 7.74
  • 我工作电脑(macOS)上的版本是 7.64
  • 在我的 Ubuntu 机器和 MacBook 上运行,在两台机器上curl -v https://api.company.com/dev/endpoint产生的输出几乎相同,以结尾
    * Connection #0 to host api.company.com left intact
    ,但在 macOS 上有一个额外的行,包含正文
    {"internal_code": "ok", ....}* Closing connection 0

最后,我要补充一点...

  • JSON 响应主体curl https://reqbin.com/echo/get/json在 Ubuntu 上显示,并且有时-H "Accept: application/json"如果我添加到 curl 中,内部 API 将显示主体(但没有总是)。
  • HTML 响应主体似乎总是显示。

相关内容