Есть ли способ использовать плагин/макрос в Confluence для отображения результатов на странице?

Совершенно гипотетически, просто интересно, есть ли у кого мысли.

Я создал конечную точку REST в Confluence, которая использует браузер REST API.

У меня была идея, которая включает отображение результатов из конечной точки REST на определенной странице Confluence в форме таблицы. Кто-нибудь знает, возможно ли это?

Таким образом, пользователь переходит на страницу Confluence, чтобы отредактировать ее, и либо использует макрос, либо плагин для доступа к конечной точке REST. Затем REST возвращает информацию, необходимую пользователю, и пользователь может отобразить эту информацию на странице.

Я думал, что это должно включать либо:

  1. Написание макроса, который обращается к самой конечной точке REST и преобразует результаты в таблицу.

  2. Написание макроса, который обращается к браузеру REST API для получения результатов, а затем отображает их в таблице.

Я не ожидаю здесь подробных ответов, мне просто интересно, пробовал ли кто-нибудь что-нибудь подобное? Или есть какие-либо мысли о том, как я мог начать идти об этом? Мои поиски не дали похожих результатов.


person Ali1874    schedule 27.01.2016    source источник


Ответы (1)


Предполагая, что вы используете Confluence Server, я бы начал с создания очень простого дополнения Confluence, например. Гистер.

В метод выполнения макроса, я бы заменил код, который там есть, и заменил его чем-то вроде этого :

@Override
public String execute(Map<String, String> parameters,
                      String body,
                      ConversionContext conversionContext)
        throws MacroExecutionException {
    String url = parameters.get("url");        
    return "<script>/*your code here*/</script><div data=rest-url='"" + url + "\" class=\"macro-rest-api\"></div>";
}

Это поможет вам начать работу, позволяя внедрить правильный REST API на страницу.

Позже вам, вероятно, потребуется добавить еще несколько параметров, чтобы сделать его более динамичным.

Затем вы можете написать свой собственный JavaScript в этом разделе /*your code here*/, который печатает таблицу в ближайшем dicv.macro-rest-api

Кроме того, попробуйте переместить свой JavaScript в отдельный модуль веб-ресурса, чтобы вы могли обновлять его без перекомпиляции.

person dvdsmpsn    schedule 28.01.2016