Comment développer une API REST avec Prisma et PostgreSQL

Comment développer une API REST avec Prisma et PostgreSQL

Dans ce tutoriel, vous allez créer une API REST pour une petite application de blogs dans TypeScript à l'aide de Prisma et d'une base de données PostgreSQL. Vous allez configurer votre base de données PostgreSQL localement avec Docker et implémenter des itinéraires API REST en utilisant Express. À la fin du tutoriel, vous disposerez d'un serveur web qui fonctionne localement sur votre machine, capable de répondre aux diverses demandes HTTP et de lire et écrire des données dans la base de données.

L'auteur a choisi le [Diversity in Tech Fund_](https://www.brightfunds.org/funds/diversity-in-tech)_​​​​​ pour recevoir un don dans le cadre du programme [Write for DOnations_](https://do.co/w4do-cta)._

Introduction

Prisma est une boîte à outils de base de données open source. Il se compose de trois outils principaux :

  • Prisma Client : un constructeur de requêtes automatisé de type sécurisé pour Node.js et TypeScript.
  • Prisma Migrate : un système déclaratif de modélisation et de migration de données.
  • Prisma Studio : une interface graphique permettant de visualiser et de modifier les données de votre base de données.

Ces outils sont conçus pour optimiser la productivité d'un développeur d'applications dans les flux de travail de ses bases de données. L'un des principaux avantages de Prisma réside dans le niveau d'abstraction qu'il offre : Au lieu de trouver des requêtes SQL complexes ou des migrations de schéma, en utilisant Prisma, les développeurs d'applications peuvent travailler avec leur base de données en réfléchissant de manière plus intuitive sur leurs données.

Dans ce tutoriel, vous allez créer une API REST pour une petite application de blogs dans TypeScript à l'aide de Prisma et d'une base de données PostgreSQL. Vous allez configurer votre base de données PostgreSQL localement avec Docker et implémenter des itinéraires API REST en utilisant Express. À la fin du tutoriel, vous disposerez d'un serveur web qui fonctionne localement sur votre machine, capable de répondre aux diverses demandes HTTP et de lire et écrire des données dans la base de données.

Conditions préalables

Ce tutoriel suppose que :

Il vous sera utile d'avoir des connaissances de base sur les API TypeScript et REST, mais pas nécessaire pour suivre ce tutoriel.

Étape 1 — Création de votre projet TypeScript

Au cours de cette étape, vous allez configurer un projet TypeScript simple en utilisant npm. Ce projet constituera la base de l'API REST que vous allez développer tout au long de ce tutoriel.

Tout d'abord, créez un nouveau répertoire pour votre projet :

mkdir my-blog

Ensuite, naviguez dans le répertoire et initialisez un projet npm vide. Notez que l'option -y signifie ici signifie que vous ignorez les invites interactives de la commande. Pour parcourir les invites, supprimez -y de la commande :

cd my-blog
npm init -y

Pour plus d'informations sur ces invites, vous pouvez suivre l'étape 1 dans Comment utiliser les modules Node.js avec npm et package.json.

Vous obtiendrez un résultat similaire à ce qui suit, avec les réponses par défaut en place :

Output
Wrote to /.../my-blog/package.json:

{
  "name": "my-blog",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

Cette commande crée un fichier package.json minimal qui vous servira de fichier de configuration pour votre projet npm. Vous êtes maintenant prêt à configurer TypeScript dans votre projet.

rest

Bootstrap 5 Complete Course with Examples

Bootstrap 5 Tutorial - Bootstrap 5 Crash Course for Beginners

Nest.JS Tutorial for Beginners

Hello Vue 3: A First Look at Vue 3 and the Composition API

Building a simple Applications with Vue 3

Deno Crash Course: Explore Deno and Create a full REST API with Deno

How to Build a Real-time Chat App with Deno and WebSockets

Convert HTML to Markdown Online

HTML entity encoder decoder Online

What is REST API? An Overview | Liquid Web

What is REST? The REST acronym is defined as a “REpresentational State Transfer” and is designed to take advantage of existing HTTP protocols when used

RESTful API Design Driven Approach

In this tutorial, you will learn the fundamentals of RESTful API design by applying REST principles and best practices. In additon, learn how to define resources, methods, requests, and responses.

How to build a RESTful API — A Deep Dive into REST APIs

Conceptualizing REST through a practical and objective approach. The goal of this article is to show off elements of the web architecture that are fundamental pieces of REST architecture.

GraphQL vs REST: putting REST to rest

When you need to build an API, your mind will likely jump to REST, the de facto standard for API creation. However, this is about to change with GraphQL, as its popularity quickly rises.

What the difference between REST API and RESTful API?

Representational state transfer (REST) is a style of software architecture. As described in a dissertation by Roy Fielding, REST is an "architectural style" that basically exploits the existing technology and protocols of the Web. RESTful is typically used to refer to web services implementing such an architecture.