2014-10-24 6 views
0

Проблема:Java или библиотека JavaScript для генерации HTML из Swagger, Raml или API Blueprint

Я ищу библиотеку в Java или JavaScript (или, возможно, Scala), которая способна генерировать HTML представление Swagger , RAML или API Blueprint.

фона:

Идея заключается в том, чтобы использовать его в качестве части (Play Framework) веб-приложение, служащей в качестве каталога API. Спецификации API будут добавлены пользователями каталога API, и полученные HTML-представления будут сгенерированы/отображены.

Это даст дополнительную ценность, если также можно создать заглушку спецификации API, используя Java API. В веб-приложении каталога API есть модель данных, которую я хотел бы использовать при создании заглушек API.

Кроме того, это даст дополнительную ценность, если одна и та же (или связанная с ней) библиотека предоставила хороший HTML-редактор языка спецификации API (Swagger, RAML, API Blueprint и т. Д.), Поддерживающий пользователя во время редактирования.

ответ

0

Существует несколько инструментов для генерации HTML из API Blueprint, один из которых находится в Coffeescript и называется Aglio. Вы можете увидеть все инструменты здесь:

http://apiblueprint.org/

Кроме того, Apiary это услуга, которая использует API Blueprint и может быть использован для редактирования и хостинг генерироваться документации, подключение с Github для автоматического создания из фиксаций, предоставляя некоторые издевательства API и некоторые другие интересные вещи для команд и предприятий. Вы можете проверить это, хотите ли вы получить надежный сервис для документации по API.

+0

Я нашел Aglio https://www.npmjs.org/package/aglio, но как я понимаю его, вы не может запускать его в клиентском браузере, вместо этого вам нужно иметь backend или исполняемый файл nodejs в вашей системе. Я ищу либо java, либо javascript HTML-рендерер. – nize

2

Swagger предлагает набор инструментов для этого.

Swagger-Core позволит вам создавать документацию Swagger из вашего кода воспроизведения. Это выполняется во время выполнения и изменяется по мере изменения вашего приложения.

Swagger-UI будет читать такие документы и отображать их в формате HTML. Он также позволяет выполнять операции и при необходимости интегрировать с механизмами безопасности. Пользовательский интерфейс может быть настроен так, чтобы иметь представление о вашем приложении (как это делали многие до сих пор).

Редактор Swagger позволяет прямое редактирование документации Swagger с интерактивным бок о бок представлением документов в формате HTML.

Swagger-Codegen может принимать такую ​​документацию и генерировать код клиента и сервера. Вы можете настроить шаблоны в соответствии с вашими потребностями.

+0

Целью является не документировать API-интерфейс приложения Play. Вместо этого я просто использую приложение Play для управления всеми API-интерфейсами на предприятии. Итак, Swagger-core/codegen не является prio 1. Однако я буду более внимательно изучать Swagger-UI и Swagger-Editor. – nize

+0

После того, как я углубился в Swagger, я обнаружил, что онлайновый редактор хорош (даже не посылает спецификацию на сервер - для тех, кто занимается конфиденциальностью), и что генератор html построен без необходимости использования бэкэнд. Все отлично. Но потом я обнаружил, что он не поддерживает XML-схему, что является проблемой в организации, в которой я собираюсь внедрить решение. – nize

+0

Я предполагаю, что вы, возможно, спрашивали об этом по swagger-spec. * * Возможные решения, но для этого потребуется дополнительная настройка (в зависимости от сложности XML, она может не потребоваться). Лучше всего было бы пройти через группу google. – Ron

0

Для Raml у вас есть: - https://github.com/kevinrenskers/raml2html - https://github.com/mikestowe/php-raml2html

Дайте те попробовать;)

+0

Да, может быть, мне нужно обратиться к ним. Проблема, которую я вижу с ними, заключается в том, что вам нужно запустить не-Java-серверный код, либо php, либо nodejs. – nize

+0

Это на самом деле CLI, я не вижу необходимости приложения на стороне сервера. О не JAVA, я согласен. Было бы хорошо сделать то же самое в JAVA, поэтому проще подключиться к MVN. Я посмотрю, смогу ли я тоже поработать над этим. – nohorbee

+0

Что я пытаюсь сделать, так это написать веб-приложение, которое позволяет пользователю загружать RAML-файл, и из этого веб-приложение должно автоматически генерировать html-документацию. Веб-приложение построено с помощью html, JavaScript и бэкэнд Java. Вот почему я ищу библиотеку Java или JavaScript, которая преобразует RAML в html. – nize