Как привязать URL к методу Java, который возвращает строку JSON? - PullRequest
0 голосов
/ 11 июня 2018

Я практикую разработку плагина Дженкинса.И я хочу отправить ajax-запрос с некоторыми файлами cookie во внешнем интерфейсе для внутренней обработки, а затем получить ответ json для продолжения обработки моей логики внешнего интерфейса.Могу ли я связать URL-адрес с внутренним java-методом с параметрами, такими как StaplerRequest и StaplerResponse, и просто получить возвращенный json из метода в качестве моего ответа?

Ответы [ 2 ]

0 голосов
/ 11 июня 2018

После поиска я нашел сайт , рассказывающий о том, как работает степлер Jenkins. В частности, метод действия может быть полезен для меня

Согласно документу, который я нашел:

Метод действия

Если URL имеет вид "/ fooBar / ....", а узел имеет открытый метод "action" с именем doFooBar(...), затем вызывается этот метод.

для получения ответа 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);
}
0 голосов
/ 11 июня 2018

Да, вы можете создать простой метод Rest, который потребляет только ответ в JSON, что-то вроде этого

@POST
@Path("/somemethod")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public CommonResponseBean somemethod() {
    return response(); // return CommonResponseBean, this will automatically converted into json using jackson
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...