Смешать тело запроса / ответа и структуры данных

Я хотел бы использовать план aglio/api для создания хорошей документации для нашего нового API.

JSON может быть довольно большим (с большим количеством необязательных значений), поэтому я хотел бы дать правильный вариант использования в теле, но также использовать структуры данных для схемы json. Однако всякий раз, когда схема соответствует точно телу, результирующий HTML-код выдает мне "Hello, world!", Так как я не заполнил данные примера - но так как у меня есть полный и правильный пример в теле, Я бы не ожидал, что allio создаст выход Hello World.

Для справки, это то, что я ожидал в появившемся теле htmls:

{
    "a": "i want this to appear",
    "b": "in my aglio",
    "c": "html file"
}

Вот что на самом деле появляется:

{
    "a": "Hello, world!",
    "b": "Hello, world!",
    "c": "Hello, world!",
    "d": "Hello, world!"
}

И это сырой план API:

FORMAT: 1A

# JSON Schema

# Test [/post/something]

## A Test [POST]

+ Request (application/json)
    + Attributes (SomeObject)

    + Body

        {
          "a": "i want this to appear",
          "b": "in my aglio",
          "c": "html file"
        }

+ Response 200

# Data Structures
## SomeObject (object)
+ a (string) - A
+ b (string) - B
+ c (string) - C
+ d (string, optional) - I'm optional, yet don't want to appear in the html, only the schema

Итак, во-первых: это правильный способ делать вещи? Вы бы порекомендовали другой подход? Это ошибка в aglio, потому что в пасеке это работает так, как я намереваюсь? Спасибо!

2 ответа

Вы можете сделать следующее

FORMAT: 1A
# JSON Schema
# Test [/post/something]
JSON Schema Title
## A Test [POST]

+ Request (application/json)
    + Attributes (object)
        + a a-value (string, required) - description about a
        + b b-value (number, required) - description about b
        + c c-value (string, required) - description about c
        + d [a1, a2, a3] (array, optional) - I'm optional

+ Response 200 (application/json)
    {
     "message": "this works"
    }

a-значение (строка, обязательное) - описание В вышеприведенной строке "a" -> имя атрибута, "a-значение" -> появляется в теле, "(строка, обязательное)" -> для генерации схемы "description"-> описание атрибута схемы

Нашел соответствующую проблему github, похоже, с моим описанием все в порядке. https://github.com/danielgtaylor/aglio/issues/221

Другие вопросы по тегам