/ktor-API-examples

Examples with ktor to create an API REST

Primary LanguageKotlinMIT LicenseMIT

ktor-API-examples

Ejemplos con KTOR para la creación de un API REST

    Exposición de una API básica con los elementos operacionales del CRUD
    Operaciones: [ get, put, post, delete]
    PipelineContext semántico
    Bloque SafetyAsync en los elementos del route

    Refactors en el routing anclando el end-point base
    Refactors en el route sin rutas, solo parámetros de entrada
    Exposición de una API enriquecida con los elementos operacionales del CRUD
    Operaciones: [ get, put, post, delete, getAll, deleteAll]
    PipelineContext semántico
    Bloque SafetyAsync en los elementos del route

    Modelos tipados con anotaciones @Locations (refactor friendly)
    Tipado estático para el acceso de diferentes parametros en el route
    Refactors en el routing sin el end-point
    Refactors en el route sin rutas
    Exposición de una API enriquecida con los elementos operacionales del CRUD tipados
    Operaciones: [ get<T>, put<T>, post<T>, delete<T>, getAll<T>, deleteAll<T> ]
    PipelineContext semántico
    Bloque SafetyAsync en los elementos del route

    Exposición de una API enriquecida con los elementos operacionales del CRUD - number
    Operaciones: [ get, getAll, add, postMinor, postMajor, postEquals, delete, deleteAll ]
    Bloque SafetyAsyncWithContext en los elementos del route (no optimizado, es global a la operación)
    Retrocompatibilidad con proyecto [ 03 Locations API | type-safe Routing ]

    Exposición de una API enriquecida con elementos operacionales flowables y diferentes block-body
    Operaciones: [ getFlow, getFlowBlock, getFlowContext, getFlowOdd, getFlowBlockOdd, getFlowContextOdd,getFlowEven, getFlowBlockEven, getFlowContextEven ]
    Refactor en el routing con un solo entryPoint 
    Retrocompatibilidad con proyecto [ 04 Async API | withContext ]
    Basado en el video 'Mobile Backends with Kotlin and Google Cloud (Google I/O'19)' pero alojando el recurso en Local
    Exposición de una API customizada para el tratamiento de imágenes
    Operacion: [ putColorMono] 
    Retrocompatibilidad con proyecto [ 05 Flow API | Experimentos ]

    Reemplazo de 'install(DefaultHeader)' por 'install(AutoHeadResponse)'
    Definición de un remotePath
    Añadido paquete con recursos
    Retrocompatibilidad con proyecto [ 06 Image API | Monochroma ]

    Añadido install(Authentication)
    Añadida validación de acceso
    Exposición de una API customizada para el tratamiento de accesos con autenticacion
    Operacion: [ get ] 
    Retrocompatibilidad con proyecto [ 07 static Content API | Recursos ]

Referencias