API rest

🧭 Différences entre une API Express et une application Express

Critère

API Express

Application Express (Web App)

Type de réponse

res.json() — renvoie des données au format JSON

res.render() — génère une page HTML via un moteur de template

Client cible

Application cliente (navigateur JS, mobile, autre serveur)

Utilisateur humain via navigateur

Format de données

JSON, parfois XML ou texte brut

HTML enrichi, souvent avec CSS et JS

Usage typique

Backend pour SPA, mobile, microservices, intégration tierce

Site web classique, CMS, e-commerce, blog

Middleware courant

express.json(), cors, helmet

express.urlencoded(), cookie-parser, express-session

Vue / Template Engine

Aucun ou minimal (res.send() parfois)

Pug, EJS, Handlebars, etc.

Structure des routes

RESTful (GET /api/users, POST /api/login, etc.)

Pages (GET /home, GET /contact, etc.)

Navigation

Gérée côté client (React, Vue, etc.)

Gérée côté serveur via Express

Séparation des rôles

Souvent découplée du frontend (architecture en couches ou microservices)

Frontend et backend souvent intégrés dans le même projet


🛩️List Courses API

This project is a Node.js RESTful API for managing a list of courses. It uses Express and organizes code into controllers, models, and routes. The API supports basic CRUD operations for courses and includes server-side views for course management.

 🚀HOW-TO : https://dupontexpressjs.blogspot.com/p/api-rest.html

⚙️ This application uses an in-memory array for data storage. Data will be lost when the server restarts. For production use, consider integrating a database like MongoDB, PostgreSQL, or MySQL.

 Github : → links

Série d'articles Mongodb

 Je viens de vous rediger une serie d'articles sur mongoose + express


Let's start with mongoose !





  Le premier DS aura lieu le 17 Novembre.

🍕PizzasAPI

 






🚀 https://mypizzasapi.onrender.com/

{
  "message": "Welcome to Pizza API! 🍕",
  "description": "A simple REST API for pizzas - inspired by ghibliapi.dev",
  "endpoints": {
    "pizzas": "/API/pizzas",
    "pizzaById": "/API/pizzas/:id",
    "pizzasWithPrices": "/API/pizzasWithPrices",
    "ingredientPrices": "/API/ingredientPrices",
    🪛"pizzaSearchByIngredient": "/API/pizzas/search?ingredient=🧀",
"pizzaSinglePrice": "/API/pizzasWithPrices/:id/price", "customPrice": { "method": "POST", "path": "/API/pizzasWithPrices/compute", "body": { "ingredients": [ "🍅", "🧀" ] } } } }

Exemples : 
🪛Ainsi pour tester l'API avec ingredient=🧀
https://mypizzasapi.onrender.com/API/pizzas/search?ingredient=🧀
🪛Ainsi pour tester l'API avec ingredient=🍅 et ingredient=🍄
https://mypizzasapi.onrender.com/API/pizzas/search?ingredient=🍄&ingredient=🍅

🥷Pour tester : https://dupontdenis.github.io/testMyPizzasAPI/

API rest 🛩️

Express REST API - Learning Project

A complete REST API built with Express.js and MongoDB to learn CRUD operations.