Présentation

Présentation rapide de HttpLib (C# .NET Framework)

1. Présentation de la bibliothèque

HttpLib (auteur James Thorne) est une bibliothèque d’assistance aux requêtes .NET publiée sous licence Apache 2.0. Elle simplifie les appels réseau asynchrones, gère les envois de fichiers et le téléchargement de pages web, et utilise une syntaxe d’appel fluide.

Attention : ne pas la confondre avec les bibliothèques C++ homonymes httplib et com.daniyarkaliyev.httplib. Installez impérativement le paquet : HttpLib

Si le paquet n’est pas installé, le code ne trouvera pas le type Http.

2. Étapes d’installation

  1. Faites un clic droit sur votre projet dans l’Explorateur de solutions → Gérer les paquets NuGet
  2. Allez dans l’onglet Parcourir et cherchez HttpLib
  3. Sélectionnez le paquet de l’auteur James Thorne (@j6mes) et cliquez sur Installer (version v2.0.16.94)
  4. Attendez le message de fin d’installation dans la fenêtre Sortie

3. Importer HttpLib

1. Manque de référence d’espace de noms

Ajoutez cette directive tout en haut de votre fichier :

using HttpLib;

Sans cette ligne, Http.Get() affichera un soulignement ondulé rouge.

Après installation via NuGet, la référence est généralement ajoutée automatiquement, pas besoin de l’écrire à la main.

2. Exemple de code
using System;
using HttpLib; // Import essentiel

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Http.Get("https://archive.codeplex.com/?p=httplib")
                .OnSuccess(result =>
                {
                    Console.Write(result);
                })
                .Go();

            Console.ReadKey();
        }
    }
}Langage du code : JavaScript (javascript)

Certains sites bloquent les requêtes d’extraction, ce qui peut causer des erreurs ; le site peut aussi être hors‑service.

An unhandled exception of type « System.Net.WebException » occurred in JumpKick.HttpLib.dll

Si cette erreur apparaît, testez l’URL dans votre navigateur. Remplacez‑la par un autre domaine si le site n’est pas accessible.

4. Explication de la syntaxe

Http.Get("url")               // Créer une requête GET
.OnSuccess(result => {})      // Callback de réussite, result = contenu renvoyé par la page
.Go();                        // Lancer l’exécution asynchroneLangage du code : JavaScript (javascript)
  • .Go() : lance l’appel réseau asynchrone sans bloquer le thread principal
  • Complément : utilisez .OnError() pour intercepter les exceptions réseau
Http.Get("https://example.com")
.OnSuccess(res=>Console.WriteLine(res))
.OnError(ex=>Console.WriteLine("Échec de la requête : "+ex.Message))
.Go();Langage du code : JavaScript (javascript)

L’adresse de test des exemples n’est plus valide : elle échouera à l’exécution. Utilisez plutôt : https://httpbin.org/html

6. Exemple complet

using System;
using HttpLib;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Utiliser une adresse de test fonctionnelle
            Http.Get("https://httpbin.org/html")
                .OnSuccess(result =>
                {
                    Console.WriteLine("Requête réussie :");
                    Console.Write(result);
                })
                .OnError(err =>
                {
                    Console.WriteLine("Erreur de requête : " + err.Message);
                })
                .Go();

            Console.WriteLine("Requête asynchrone envoyée, appuyez sur une touche pour quitter");
            Console.ReadKey();
        }
    }
}Langage du code : JavaScript (javascript)

Si vous voyez toujours des soulignements rouges après avoir ajouté using HttpLib;, je peux vous expliquer comment vider le cache NuGet et réinstaller le paquet.

Remarques importantes

httpbin.org est un service de test HTTP gratuit open source créé par l’auteur de la bibliothèque Python requests, dédié au débogage des requêtes HTTP.

/html est l’un des chemins d’API proposés par ce service.

Résultat d’exécution

Ouvrir ce lien renvoie directement un document HTML minimal :

Présentation

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *