我需要使用有效负载进行API调用(一切都需要完全一样)
{"file": "//'HLQ.DATASET(MEMBER)'"}
Jenkins管道中。我不能正确地计算有效负载的转义。问题是圆括号,单转义- Groovy抱怨,双转义-其中一个斜杠一直冒泡到curl调用。
def String job = """{\\"file\\": \\"\\'HLQ.DATASET\\(MEMBER\\)\\'\\"}"""
...
script {
def String response = sh(script: " curl -X PUT -w %{http_code} -v --header 'Content-Type: application/json' --cookie cookies.txt --header 'X-CSRF-ZOSMF-HEADER: dummy' --header 'X-IBM-Notification-URL: ${hook.getURL()}' https://.../zosmf/restjobs/jobs --data '$job'", returnStdout: true).trim()
}
1条答案
按热度按时间oyt4ldly1#
如果您正在检查Jenkins控制台输出以确定消息是否正确发送,这可能会误导您。您在控制台输出中看到的并不总是经过解释的字符串。
你可以尝试类似下面这样的方法吗?同样为了检查Curl发送了什么,你可以使用像
--trace
这样的标志