es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Intentando aplicar $ref de OpenAPI a mi caso de uso.

Entonces, estoy intentando aplicar $ref en mis documentos OpenApi, pero no estoy seguro de estar haciéndolo correctamente. Tengo algo que luce así por ahora para uno de mis puntos finales:

/**
 * @openapi
 * /api/v2/auth/permissions:
 *   get:
 *     description: Obtener permisos.
 *     responses:
 *       200:
 *         description: Obtener permisos.
 *         content:
 *         application/json:
 *           schema:
 *             $ref: './model/permission.model'
 */

Esto solo muestra la cadena como "string".

Hazme saber si necesitas revisar ese archivo de modelo o cualquier otra cosa.

El archivo permission.model.ts luce así:

interface Permission {
  _id: ID,

  roleId?: string,
  userId?: number,
  groupId?: number
}

const PermissionSchemaFields: Record<keyof Permission, any> = {
  _id: Types.ObjectId,

  roleId: { type: String, required: false }
  userId: { type: Number, required: false }
  groupId: { type: Number, required: false }
}

const PermissionSchema = new Schema(
  PermissionSchemaFields,
  { timestamps: { createdAt: 'createdOn', updatedAt: 'updatedOn'}}
);

export {PermissionSchema, Permission}
Tags:  ,

Answer

  1. Avatar for davy.ai

    Parece que estás usando códigos de caracteres HTML en tu valor $ref (por ejemplo, ' en lugar de comillas simples). Deberías usar comillas simples reales como esta:

    $ref: './model/permission.model'
    

    Además, asegúrate de que la ruta a tu archivo de modelo sea correcta y de que el modelo en sí sea válido. Puedes intentar resolver el $ref manualmente abriendo el archivo en la ruta que especificaste y comprobando si contiene un esquema JSON o YAML válido.

Comments are closed.