首页 > 解决方案 > Jenkins - 如何将 url 绑定到返回 json 字符串的 java 方法?

问题描述

我正在练习开发一个詹金斯插件。我想在前端发送一个带有一些 cookie 的 ajax 请求以进行后端处理,然后接收一些 json 响应以继续处理我的前端逻辑。我是否可以使用参数将 url 绑定到后端 java 方法,StaplerRequestStaplerResponse简单地从方法中获取返回的 json 作为我的响应?

标签: javarestjenkinsjenkins-plugins

解决方案


搜索了一圈后,我找到了一个介绍 Jenkins 订书机工作原理的网站。特别是,动作方法可能对我有帮助

根据我找到的文件:

动作方法

如果 url 的格式为“/fooBar/....”,并且节点有一个名为 doFooBar(...) 的公共“action”方法,则调用此方法。

检索 json 响应,在前端,

$.ajax({
    url: "./someUrl/",
}).done(doSomethingOnData(data));

在后端,定义一个对应的动作方法:

public void doSomeUrl(StaplerRequest request, StaplerResponse response) {
    Cookie[] myCookies = request.getCookie();
    doSometingBasedOnCookies(myCookies);
    response.setStatus(200);
    response.setContentType("application/json;charset=UTF-8");
    String myJson = getJson();
    response.getWriter().print(myJson);
}

推荐阅读