Я использую sails.js 0.12.13 и sails-hook-swagger-generator для создания документации по подделкам.Я хочу установить необходимые параметры в контроллере вways.js.Я уже пробовал разные варианты, но безрезультатно.Я могу установить параметры тела, как описано здесь, но есть описанная опция только с типами, которые не являются объектами (не вложенными).Попытка использовать «схему» также не привела к успеху.
Не могли бы вы помочь мне понять, как правильно использовать вашу библиотеку для достижения результатов, описанных выше.
Пример моей схемы ajvПроверка.Конструктивно мне нужен тот же результат, что и в сваггере.
signin: {
type: "object",
properties: {
company: {
type: "object",
properties: {
name: {type: "string", minLength: 1, maxLength: 50},
email: {type: "string", format: "email", minLength: 0, maxLength: 50}
},
required: ["name", "email"]
},
contact: {
type: "object",
properties: {
firstName: {type: "string", minLength: 1, maxLength: 50},
email: {type: "string", format: "email", minLength: 0, maxLength: 50}
},
required: ["firstName", "email"]
}
},
required: ["company", "contact"]
}
Буду признателен за любую помощь!
Мне посоветовали использовать этот паттерн , затем двигатьсятребуемый массив как поле в каждом из полей объекта свойств.Я пытался использовать его, но, к сожалению, все попытки настроить маршруты так, чтобы отображались внедренные объекты, безрезультатны.Код не преобразуется в правильный файл swagger.json.
Пример кода (одна из последних попыток):
Route.generate({
method: "POST",
endpoint: "auth/signin",
controller: controller,
action: "signin",
swagger: {
summary: "User login",
description: "User login",
parameters: [{
in: 'body',
type: 'object',
name: 'contact',
schema: {
type: 'object',
properties: {
name: { type: "string", minLength: 1, maxLength: 50 }
}
},
required: true
}, {
in: 'body',
type: 'object',
name: 'company',
schema: {
type: 'object',
properties: {
name: { type: "string", minLength: 1, maxLength: 50 }
}
},
required: true
}]
}
});
В результате в моем пользовательском интерфейсе 2 пустыхпараметры тела (контакт и компания) с типом "объект".