jenkins JsonOutput函数在将私钥转换为json时添加反斜杠

a1o7rhls  于 2023-05-16  发布在  Jenkins
关注(0)|答案(1)|浏览(164)

我正在尝试创建一个具有不同键值对的JSON文件。我使用groovy中的函数JsonOutput.toJson来实现这一点。说内容是:

def private_key = '-----BEGIN PRIVATE KEY-----\nxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzx\nyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyz\n-----END PRIVATE KEY-----'

def test = [
    "apiAudienceURL": "https://xyz",
    "apiKey": [
        "type": "service_account",
        "private_key": private_key
    ]
  ]

JsonOutput.prettyPrint(JsonOutput.toJson(test))返回:

{
    "apiAudienceURL": "https://xyz",
    "apiKey": {
        "type": "service_account",
        "private_key": " -----BEGIN PRIVATE KEY-----\\nxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzx\\nyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyzxyz\\n-----END PRIVATE KEY-----"
    }}

如何防止它在我的私钥中添加额外的反斜杠?

syqv5f0l

syqv5f0l1#

也许你可以使用JsonBuilder类代替

def jsonBuilder = new JsonBuilder(test)
def jsonString = jsonBuilder.toPrettyString()

相关问题