我正在尝试使用Resty框架从我的Java程序执行Jenkins构建(使用Resty不是必需的,只是看起来最简单的方法)。它适用于没有参数的作业,包括身份验证,但是我尝试使用参数执行构建但是我从Jenkins服务器返回(非描述)错误500.
URI jenkinsURI = new URI("https://"+jenkinsServer+"/job/bowling%20Q%20build/build?token="+jenkinsToken);
String b = URLEncoder.encode("json={\"parameter\": [{\"name\": \"git_tag\", \"value\": \"v1\"}],\"\":\"\"", "UTF-8");
System.out.println("My Results: "+r.text(jenkinsURI, Resty.content(b)));
知道怎么做吗?我已经跟随these instructions发送了JSON,它可以从curl中正常工作,但不是来自Java Resty。
答案 0 :(得分:0)
问题是我没有/不能使用URLEncoder。一旦我将Resty.content更改为
System.out.println("My Results: "+r.text(jenkinsURI, Resty.form(Resty.data("json", "{\"parameter\": [{\"name\": \"git_tag\", \"value\": \"1.0.4\"}],\"\":\"\"}"))));
它开始正常工作。