无法使用两个 -H 参数通过 cURL 命令导入 Jelastic Manifest

问题描述

我正在尝试创建一个 jelastic Manifest,其中包含一个 cURL 命令。当我导入它时,它给了我一个错误,但不幸的是我无法访问控制台(被提供商禁用)。

命令如下: curl -X POST <my_url> -H "Content-Type: application/json" -H "Authorization: Bearer <token>" -d "{}"

一些附加信息:

  • 网址 100% 正确
  • 令牌不包含任何特殊字符:只有大写/小写字符和数字
  • 命令从命令行成功运行
  • 如果我删除一个 -H 参数,我可以导入我的清单。如果我删除第二个 -H 参数并保留第一个参数,则相同

我的猜测是,不知何故,有两个 -H 不被认为是有效的,但我不知道为什么。有什么想法吗?

编辑:平台上显示错误截图

enter image description here

解决方法

“两个 -H 参数”不是您问题的根本原因。

问题是 YAML 获取您作为键/值数组(字典)发送的数据。

在您的示例中,它将是:

curl -s -X POST https://test.com -H "Content-Type - 作为键,

application/json" -H "Authorization: Bearer xx" -d "{\"Key\":\"Value\"}" - 作为一个值。

如果你需要一个字符串数组,YAML 可能是这样的

cmd [cp]:
  - 'curl -s -X POST https://test.com -H "Content-Type: application/json" -H "Authorization: Bearer xx" -d "{\"Key\":\"Value\"}"'

如果你需要一个多行字符串,它应该是这样的

cmd [cp]: |
  curl -s -X POST https://test.com -H "Content-Type: application/json" -H "Authorization: Bearer xx" -d "{\"Key\":\"Value\"}"