通过REST API管理JIRA webhooks

时间:2016-06-01 21:59:35

标签: java rest jira webhooks

我试图通过java REST API管理JIRA。以下是我的问题: 1.如何在调用REST代码时通过webhook在URL中传递参数。 2.如何在REST代码中收到通过webhook传递的请求。

我创建了一个webhook并在提供的http://localhost:8080/rest/JIRAIntegration/JIRAService/record

网址中调用了我的rest api

虽然我的其余代码看起来像

    @Path("/JiraService")
    public class JiraService {

    @GET
    @Path("/records")
    public String getJiraRequest(InputStream response){
     //req.getParameter("key");
  BufferedReader br = null;
  StringBuilder sb = new StringBuilder();
  String line;
  br = new BufferedReader(new InputStreamReader(response));
  try {
     while ((line = br.readLine()) != null) {
        sb.append(line);
     }
  }
  catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
  }
  System.out.println("Inputstream::"+sb.toString());
  return sb.toString();

}

我是JIRA webhooks和REST的新手。任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:0)

接受Webhook的回应。你需要在jira中创建一个webhook并给予 一个可以公开访问的网址。 您的代码应该在端口80或443上运行。

现在说你的休息链接是 发布电话:http://xyz.abc.com/webservice/rest/jira/

在webhook中,您应该将网址设为http://xyz.abc.com/webservice/rest/jira/

你的休息控制器将有以下休息方法

  

@POST()       @Consumes(MediaType.APPLICATION_JSON)       @Produces(MediaType.APPLICATION_JSON)       public Response postMsg(String h){

    Gson gson = new GsonBuilder().setPrettyPrinting().create();
    JsonParser jp = new JsonParser();
    JsonElement je = jp.parse(h);
    String prettyJsonString = gson.toJson(je);
    System.out.println("################################");
    System.out.println(prettyJsonString);
    String output = prettyJsonString;

    return Response.status(200).entity(output).build();

}

现在执行此操作后,您应该将webhook配置为在创建或更新的Jira票证上发送respone等。