需要在 groovy 中的 post 请求中将变量值传递给 json 正文 - Jenkins

Need to pass variable value to the json body in a post request in groovy - Jenkins

我正在尝试在 Jenkins groovy post-build 部分中调用 POST api。我想在请求的 json 正文中传递一个 groovy 变量。

def url = "一些URL"
def body = '[{"PageName" :"worked2","pageurl" :"url 这里需要传递变量值"}]'
def http = new URL("some https url").openConnection();
http.setRequestMethod("POST")
http.setDoOutput(真)
http.setRequestProperty("接受", "application/json")
http.setRequestProperty("内容类型", "application/json")
http.getOutputStream().write(body.getBytes("UTF-8"));
http.connect()
def postRC = http.getResponseCode();

我已经尝试了以下但对我没有任何效果:
'[{"PageName" :"worked2","pageurl" :$url}]'
'[{"PageName" :"worked2","pageurl" :"$url"}]'
'[{"PageName" :"worked2","pageurl" :url}]'

只有当我对值进行硬编码时它才能正常工作。我怎样才能做到这一点?

当我在下面使用时这有效:
{“页面url”:“'+ url +'”}
(双引号单引号+变量名+单引号双引号)