Fermer

février 20, 2024

Introduction à l’API Ktor Rest

Introduction à l’API Ktor Rest


Pour Kotlin, Lequel est un framework Web léger et adaptable qui peut être utilisé pour créer des applications Web hautement performantes et évolutives. Son extensibilité et sa simplicité d’utilisation, qui permettent aux développeurs de développer et de lancer des applications rapidement avec une syntaxe claire et simple, sont les principales raisons de son attrait. Un large éventail de fonctionnalités est également disponible avec Ktor, notamment la prise en charge des clients et serveurs HTTP, le routage, la création de modèles et la programmation asynchrone. De plus, de nombreux développeurs Kotlin préfèrent Ktor en raison de sa polyvalence dans le travail avec diverses plates-formes et contextes, notamment les environnements cloud et Android.

Ce blog vous apprendra les fondamentaux de Lequel et vous montrer comment l’utiliser pour créer une application backend de base.

Qu’est-ce que Ktor

● Développé par JetBrains, Lequel est un framework open source permettant de créer des serveurs et des clients asynchrones avec le langage de programmation Kotlin.

● Parce qu’il fournit une méthode flexible et légère de développement d’applications Web mettant l’accent sur la modularisation et l’extensibilité, Ktor a gagné en popularité. Grâce à la syntaxe succincte et aux fonctionnalités de programmation fonctionnelles de Kotlin, les développeurs peuvent créer des applications Web rapidement et sans effort. En raison de sa conception extrêmement évolutive et performante, il peut être utilisé pour créer des applications en ligne à fort trafic. Il peut fonctionner sur des serveurs conventionnels, des environnements conteneurisés et des plates-formes sans serveur comme AWS Lambda, entre autres possibilités de déploiement.

Pourquoi lequel ?

● Kotlin et Coroutines : Créer des applications Web à l’aide de Kotlin et Coroutines dans Ktor offre une approche contemporaine et efficace. La création et la maintenance du code à l’aide de la syntaxe expressive de Kotlin avec l’interopérabilité Java sont plus simples, et l’écriture de code asynchrone avec Coroutines est évolutive et efficace.

● Léger et flexible : Ktor est construit à partir d’une collection de bibliothèques compactes et ciblées qui peuvent être utilisées séparément ou en combinaison, en fonction des exigences du projet. Il utilise les fonctionnalités robustes de Kotlin, telles que les DSL (langages spécifiques à un domaine) et les fonctions d’extension, pour offrir une syntaxe claire et expressive qui permet aux programmeurs d’organiser leurs applications de manière flexible.

● Interopérable : Comme Ktor est basé sur Kotlin, il est tout à fait compatible avec Java. La facilité d’intégration de Ktor avec le code et les bibliothèques Java préexistantes permet aux développeurs d’utiliser le framework avec d’autres frameworks basés sur Java comme Springboot ou dans leurs projets Java actuels.

● Migration : Étant donné que Kotlin prend en charge la migration progressive, il permet aux grandes bases de code de migrer en douceur de Java vers Kotlin. Kotlin permet aux développeurs d’écrire du nouveau code tout en conservant intacts les composants Java existants de leur système.

● Prise en charge de l’outillage : Les développeurs peuvent facilement créer, maintenir et déployer des applications Ktor à l’aide de leurs outils et flux de travail préférés grâce à la prise en charge robuste des outils de Ktor. Plus précisément, l’interaction étroite avec IntelliJ IDEA offre aux utilisateurs de Ktor une expérience de développement transparente et efficace.

● Soutien communautaire : La communauté Ktor s’engage à aider les développeurs à se familiariser avec le framework et à en maîtriser les utilisateurs. C’est solide et encourageant. Outre la documentation officielle, la communauté Ktor fournit une assistance via d’autres plateformes comme StackOverflow, Reddit et GitHub.

Prérequis et outils utilisés pour développer l’API rest

Afin de développer une API rest à l’aide de ktor, nous devons avoir des connaissances de base du langage de programmation Kotlin et de sa syntaxe.

Nous devons utiliser les outils suivants pour développer ce projet

  • Comprendre l’EDI: Pour écrire, déboguer et exécuter le code.
  • MongoDB: Base de données pour stocker les données du projet.
  • Pas de SQLBoster : Utilisé pour afficher les données stockées dans MongoDB.

Créer une application Ktor

Selon le cahier des charges, plusieurs méthodes existent pour démarrer vos projets Ktor. Vous pouvez créer un projet Ktor avec IntelliJ IDEA Ultimate. Utilisez l’édition communautaire, qui vous permet de créer un projet Ktor à l’aide d’un générateur de projet basé sur le Web, si vous êtes intéressé par le développement open source. De plus, vous pouvez utiliser start.ktor.io pour créer une nouvelle application Ktor et utiliser IntelliJ IDEA pour fournir les fonctionnalités nécessaires.

Dans cette section, nous allons créer un projet à l’aide de l’outil Web Ktor Project Generator.

Utilisez votre navigateur pour ouvrir le https://start.ktor.io/ URL.

Donnez au projet un nom légitime, tel que quel échantillon.

En sélectionnant le «ajuster les paramètres du projet« , l’utilisateur peut visualiser les configurations du projet telles qu’elles sont par défaut.

Dans cette démo, les configurations de projet par défaut seront utilisées.

Cliquez sur les boutons Ajouter des plugins pour ajouter des fonctionnalités telles que Négociation de contenu, kotlinx.sérialisation, En-têtes par défaut, et Routage.

● kotlinx.sérialisation: ContenuNégociation permet aux utilisateurs d’utiliser les convertisseurs de contenu fournis par la bibliothèque kotlinx.serialization. Cette bibliothèque prend en charge JSON, CBOR, ProtoBufet d’autres formats.

Routage: Routing est un plugin qui s’installe dans une application pour simplifier et structurer la gestion des demandes de page. Il fournit un moyen structuré de gérer les requêtes HTTP entrantes et de générer les réponses correspondantes. Avec le routage Ktor, les développeurs peuvent définir des itinéraires qui correspondent à des URL et méthodes de requête spécifiques, puis gérer ces requêtes avec une logique personnalisée.

Cliquez sur Générer un projet pour générer le projet Ktor.

Téléchargez et extrayez le [project-name].fermeture éclair (Par exemple : ktor-sample.zip) déposer.

Ouvrez-le dans je comprends l’idée édition communautaire et attendez la fin de la synchronisation Gradle.

Cliquez sur l’icône de lecture (▶️) pour exécuter le quel serveur.

La fenêtre Exécuter affiche un message du type « Réponse à http://127.0.0.1:8080» si le serveur fonctionne correctement.

Le « Bonjour le monde!« Le message s’affichera si vous appuyez sur le http://127.0.0.1:8080 URL sur le navigateur.

Comprendre la structure du projet

La structure de projet d’une application Ktor est tout à fait adaptable et peut être modifiée pour répondre aux exigences du développeur. Cependant, la structure d’un projet Ktor contiendra généralement les éléments communs suivants :

  1. src annuaire: Ce répertoire contient généralement le code source de l’application. Il peut être divisé en sous-répertoires en fonction des modules ou des fonctionnalités de l’application.
  2. ressources annuaire: Ce répertoire contient généralement tous les fichiers non sources requis par l’application, tels que les fichiers de configuration, les ressources statiques ou les modèles.
  3. test annuaire: Ce répertoire contient généralement des tests unitaires et d’intégration pour l’application.
  4. build.gradle.kts ou pom.xml: Ces fichiers contiennent la configuration de build de l’application, y compris les dépendances, les plugins et d’autres paramètres.
  5. application.conf: Ce fichier contient les paramètres de configuration de l’application Ktor, tels que les paramètres du serveur, la journalisation et les paramètres de sécurité.
  6. Application.kt: Ce fichier contient le point d’entrée principal de l’application Ktor, où le serveur est configuré et démarré.

De plus, un projet Ktor peut inclure d’autres répertoires ou fichiers en fonction des besoins de l’utilisateur, tels qu’un répertoire de base de données, des bibliothèques ou modules personnalisés ou des fichiers de configuration supplémentaires.

Créez votre première application Ktor

Cette partie couvrira la création d’une application Ktor personnalisée qui fournit à l’utilisateur des informations utilisateur. Pour continuer à créer l’application, nous utiliserons le code de début (ci-dessus), qui a été produit à l’aide du générateur Ktor. L’IDE IntelliJ IDEA Ultimate ou le générateur ktor peuvent être utilisés pour créer de nouvelles applications si c’est votre truc.

Une fois la synchronisation Gradle terminée, ouvrez le projet téléchargé dans l’édition communautaire IntelliJ IDEA.

En cliquant avec le bouton droit sur le répertoire com.example, en choisissant Nouveau → Package et en entrant un nom légitime nommé models, vous pouvez créer un package appelé com.example.models.
Créez vos propres chemins pour ajouter, supprimer et créer des utilisateurs. Créez un modèle de l’utilisateur qui inclut l’auteur, le titre, l’identifiant et les publications. Pour cela, choisissez Nouveau → Kotlin en cliquant avec le bouton droit sur le dossier des modèles.

Dans cette section, nous utiliserons un Type de liste mutable structure pour ajouter des utilisateurs et simuler les données sans utiliser de bases de données.

  • POST(« /user ») — Créer un nouvel utilisateur
    Pour créer un nouvel utilisateur, ajoutez un nouveau point de terminaison en tant que demande de publication au Sérialisation.kt déposer. Ajoutez-y le code suivant.

  • GET(« /user ») – Récupère la liste des utilisateurs
    Ouvrez le Sérialisation.kt fichier, ajoutez un nouveau point de terminaison en tant que requête get pour récupérer tous les utilisateurs. Suivez le code ci-dessous,

  • Pour exécuter l’application, sélectionnez le Application.kt fichier et appuyez sur le bouton de lecture (▶️). Ouvrez le facteur et cliquez sur les URL (par exemple : http://127.0.0.1:8080/utilisateurs) avec un corps de requête JSON.

Création de service et de routage

Nous avons créé une requête get/post de base dans la section précédente. Nous allons créer un service et un itinéraire qui préchargeront les données de l’utilisateur dans cette section.

Tout d’abord, laissez une remarque comme suit sur les lignes que vous avez ajoutées au Sérialisation.kt déposer.

Créer le service

Ajoutez une nouvelle classe ou un nouveau fichier Kotlin appelé UserService.kt. Ajoutez le code qui suit.

Créer l’itinéraire

Ajouter l’itinéraire

Ouvrez le Routage.kt fichier et ajoutez-y le code suivant.

Testez l’application

Nous pouvons maintenant utiliser les routes get, post et delete pour tester l’application. Pour démarrer l’application et tester les URL à l’aide de Postman, choisissez l’option Application.kt fichier et cliquez sur le bouton de lecture (▶️).

Référence

https://codemaker2016.medium.com/introduction-to-ktor-6e238fa20c3

https://ktor.io/

_________________________________________________________________________________________________________________________________________________

Continue d’apprendre! Continuez à coder…

Merci.






Source link