Fiber pour Go : guide complet avec exemples

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Qu'est-ce que Fiber et pourquoi l'utiliser ?

Fiber est un framework web rapide pour Go, inspiré du célèbre framework Express.js pour Node.js. Il est conçu pour développer des applications web et des API hautes performances avec une consommation mémoire minimale. Fiber utilise un modèle d'entrée-sortie non bloquant basé sur les goroutines et le package fasthttp, ce qui en fait l'un des frameworks web les plus rapides pour Go.

Pourquoi choisir Fiber ?

  • Performances : Fiber est nettement plus rapide que le package standard net/http grâce à l'utilisation de fasthttp. Il peut traiter des dizaines de milliers de requêtes par seconde.
  • Simplicité et syntaxe familière : Si vous connaissez Express.js, vous maîtriserez Fiber rapidement. L'API est très similaire : routes, middleware, gestionnaires de requêtes, tout est intuitif.
  • Zéro allocation mémoire : Fiber s'efforce de minimiser les allocations mémoire, réduisant ainsi la charge du garbage collector et améliorant la stabilité.
  • Extensibilité : Un grand nombre de middleware intégrés (CORS, journalisation, compression, sessions, etc.) et la possibilité d'en créer vos propres.
  • Support des standards modernes : Fiber prend en charge HTTP/2, WebSocket, les moteurs de templates, les fichiers statiques et bien plus encore.

Installation de Fiber

Fiber est une bibliothèque pour Go, son installation se fait via le gestionnaire de packages standard de Go. Assurez-vous d'avoir Go version 1.16 ou supérieure.

# Initialisation du module (si ce n'est pas déjà fait)
go mod init monapp

# Installation de Fiber (dernière version stable)
go get github.com/gofiber/fiber/v2

Ensuite, vous pouvez importer Fiber dans votre projet :

import "github.com/gofiber/fiber/v2"

Remarque : Si vous utilisez une version plus ancienne de Go, l'installation de Fiber v1 peut être nécessaire. Cependant, il est recommandé d'utiliser la v2, car elle est plus activement développée.

Démarrage rapide avec un exemple de code

Créez un fichier main.go et écrivez un serveur HTTP simple :

package main

import "github.com/gofiber/fiber/v2"

func main() {
    // Création d'une nouvelle application Fiber
    app := fiber.New()

    // Définition d'une route GET /
    app.Get("/", func(c *fiber.Ctx) error {
        return c.SendString("Bonjour, Fiber !")
    })

    // Démarrage du serveur sur le port 3000
    app.Listen(":3000")
}

Lancez le serveur :

go run main.go

Ouvrez votre navigateur et allez à l'adresse http://localhost:3000. Vous verrez le message "Bonjour, Fiber !".

Explication :

  • fiber.New() — crée une nouvelle instance de l'application.
  • app.Get("/", handler) — enregistre un gestionnaire pour une requête GET sur le chemin racine.
  • c *fiber.Ctx — le contexte de la requête, donnant accès aux données de la requête et de la réponse.
  • c.SendString() — envoie une chaîne de caractères en réponse.
  • app.Listen(":3000") — démarre le serveur sur le port 3000.

Méthodes et fonctions essentielles de Fiber

Examinons 10 méthodes et fonctions clés de Fiber avec des descriptions détaillées et des exemples.

1. fiber.New()

Fonction : Crée une nouvelle instance d'application Fiber avec les paramètres par défaut ou une configuration personnalisée.

Paramètres : Accepte un argument optionnel config ...fiber.Config — une structure de configuration (par exemple, AppName, Prefork, ServerHeader, etc.).

Exemple :

package main

import "github.com/gofiber/fiber/v2"

func main() {
    // Création avec les paramètres par défaut
    app := fiber.New()

    // Cré                    

Recommendations