Analyse des URL
- whatwg-url:
whatwg-url
fournit une API complète pour analyser et manipuler les URL, conforme aux spécifications WHATWG. Elle garantit une analyse précise et fournit des méthodes pour travailler avec les composants d'URL. - url-parse:
url-parse
fournit une fonction d'analyse simple qui divise les URL en leurs composants. Elle est rapide et efficace, avec un support pour les URL relatives et absolues. - url:
Le module
url
de Node.js fournit la méthodeurl.parse()
pour analyser les URL et retourner un objet contenant les composants de l'URL, tels que le protocole, l'hôte, le chemin et les paramètres de requête. - query-string:
query-string
fournit des fonctions pour analyser les chaînes de requête et extraire les paramètres sous forme d'objet. Elle gère les paramètres encodés et prend en charge les tableaux et les objets imbriqués. - url-search-params:
url-search-params
fournit une interface pour accéder et manipuler les paramètres de requête d'une URL. Elle permet d'ajouter, de supprimer et de modifier les paramètres facilement.
Sérialisation des Paramètres de Requête
- whatwg-url:
whatwg-url
fournit des méthodes pour sérialiser les composants d'URL, y compris les paramètres de requête. Elle garantit une sérialisation conforme aux spécifications. - url-parse:
url-parse
permet de sérialiser les paramètres de requête en utilisant la méthodetoString()
sur l'objet d'analyse. Elle gère l'encodage des paramètres lors de la sérialisation. - url:
Le module
url
de Node.js fournit la méthodeurl.format()
pour sérialiser les composants d'URL en une chaîne d'URL valide. Cependant, il ne gère pas directement la sérialisation des paramètres de requête. - query-string:
query-string
permet de sérialiser les objets en chaînes de requête, en gérant automatiquement l'encodage des caractères spéciaux. Elle prend en charge la sérialisation des tableaux et des objets imbriqués. - url-search-params:
url-search-params
fournit une méthode intégréetoString()
pour sérialiser les paramètres de requête en une chaîne. Elle gère automatiquement l'encodage des paramètres lors de la sérialisation.
Manipulation des Paramètres de Requête
- whatwg-url:
whatwg-url
fournit une API complète pour manipuler les composants d'URL, y compris les paramètres de requête. Elle permet une manipulation précise et conforme des paramètres d'URL. - url-parse:
url-parse
permet une manipulation simple des paramètres de requête en modifiant directement l'objet d'analyse. Cependant, elle ne fournit pas d'API dédiée pour ajouter ou supprimer des paramètres. - url:
Le module
url
de Node.js ne fournit pas d'API pour manipuler directement les paramètres de requête. Vous devez les gérer manuellement en modifiant la chaîne de requête de l'URL analysée. - query-string:
query-string
permet une manipulation limitée des paramètres de requête, mais ne fournit pas d'API intégrée pour ajouter ou supprimer des paramètres directement. Vous devez le faire manuellement en modifiant l'objet des paramètres. - url-search-params:
url-search-params
fournit une API complète pour manipuler les paramètres de requête, y compris des méthodes pour ajouter, supprimer et modifier les paramètres. Elle offre une manipulation facile et intuitive des paramètres d'URL.
Support des URL Relatives
- whatwg-url:
whatwg-url
prend en charge les URL relatives et absolues, conformément aux spécifications. Elle fournit des méthodes pour travailler avec les URL relatives de manière précise. - url-parse:
url-parse
prend en charge les URL relatives et absolues lors de l'analyse. Elle gère correctement les chemins relatifs et les résout en fonction de l'URL de base fournie. - url:
Le module
url
de Node.js gère les URL relatives et absolues. Il fournit des méthodes pour résoudre les URL relatives par rapport à une URL de base, ce qui est utile pour la manipulation des URL dans les applications. - query-string:
query-string
prend en charge l'analyse et la sérialisation des chaînes de requête, qu'elles soient relatives ou absolues. Cependant, elle ne traite pas directement les URL dans leur ensemble. - url-search-params:
url-search-params
est conçu pour travailler avec les paramètres de requête, qu'ils soient dans des URL relatives ou absolues. Il n'affecte pas la gestion des URL relatives dans son ensemble.
Exemple de Code
- whatwg-url:
Analyse et manipulation des URL avec
whatwg-url
import { URL } from 'whatwg-url'; // Création d'une URL const myUrl = new URL('https://example.com/path?name=John#fragment'); // Accès aux composants de l'URL console.log(myUrl.protocol); // https: console.log(myUrl.hostname); // example.com console.log(myUrl.pathname); // /path console.log(myUrl.search); // ?name=John console.log(myUrl.hash); // #fragment // Manipulation de l'URL myUrl.searchParams.append('age', '30'); myUrl.hash = 'new-fragment'; console.log(myUrl.toString()); // https://example.com/path?name=John&age=30#new-fragment
- url-parse:
Analyse d'URL avec
url-parse
import urlParse from 'url-parse'; // Analyse d'une URL const parsedUrl = urlParse('https://example.com/path?name=John#fragment'); console.log(parsedUrl.protocol); // https: console.log(parsedUrl.hostname); // example.com console.log(parsedUrl.pathname); // /path console.log(parsedUrl.query); // { name: 'John' } console.log(parsedUrl.hash); // #fragment // Manipulation de l'URL parsedUrl.set('query', { name: 'Jane', age: 25 }); console.log(parsedUrl.href); // https://example.com/path?name=Jane&age=25#fragment
- url:
Analyse et manipulation des URL avec le module
url
const url = require('url'); // Analyse d'une URL const myUrl = new URL('https://example.com:8000/path?name=John&age=30#section1'); console.log(myUrl.hostname); // example.com console.log(myUrl.port); // 8000 console.log(myUrl.pathname); // /path console.log(myUrl.search); // ?name=John&age=30 console.log(myUrl.hash); // #section1 // Manipulation des composants d'URL myUrl.pathname = '/new-path'; myUrl.searchParams.append('city', 'New York'); console.log(myUrl.toString()); // https://example.com:8000/new-path?name=John&age=30&city=New+York#section1
- query-string:
Analyse et sérialisation avec
query-string
import queryString from 'query-string'; // Analyse d'une chaîne de requête const parsed = queryString.parse('?name=John&age=30&hobbies=reading&hobbies=traveling'); console.log(parsed); // { name: 'John', age: '30', hobbies: ['reading', 'traveling'] } // Sérialisation d'un objet en chaîne de requête const serialized = queryString.stringify({ name: 'Jane', age: 25, hobbies: ['cooking', 'hiking'] }); console.log(serialized); // name=Jane&age=25&hobbies=cooking&hobbies=hiking
- url-search-params:
Manipulation des paramètres de requête avec
url-search-params
const url = new URL('https://example.com/path?name=John&age=30'); const searchParams = new URLSearchParams(url.search); // Accès aux paramètres console.log(searchParams.get('name')); // John console.log(searchParams.get('age')); // 30 // Ajout de nouveaux paramètres searchParams.append('city', 'New York'); // Suppression d'un paramètre searchParams.delete('age'); // Sérialisation des paramètres console.log(searchParams.toString()); // name=John&city=New+York // Mise à jour d'un paramètre searchParams.set('name', 'Jane'); console.log(searchParams.toString()); // name=Jane&city=New+York