Maison > interface Web > js tutoriel > Introduction aux méthodes liées au fonctionnement des URL dans l'URL nodejs module_node.js

Introduction aux méthodes liées au fonctionnement des URL dans l'URL nodejs module_node.js

WBOY
Libérer: 2016-05-16 16:11:36
original
1108 Les gens l'ont consulté

module URL

Le module url est très utilisé lors du traitement des requêtes HTTP, car ce module permet d'analyser les URL, de générer des URL et d'épisser des URL. Jetons d'abord un coup d'œil aux composants d'une URL complète.

Copier le code Le code est le suivant :

                           href
-------------------------------------------------- ---------------
chemin de l'hôte
-------------------------------------------------- -------------------------------------------------- ----------- http: // utilisateur:pass @ host.com : 8080 /p/a/t/h ?query=string #hash
----- --------- -------- ---- -------- ------------- --- --
protocole d'authentification du nom d'hôte du port de hachage de recherche du chemin d'accès
Depuis requête


Nous pouvons utiliser la méthode .parse pour convertir une chaîne URL en un objet URL. L'exemple est le suivant.


url.parse('http://user:pass@host.com:8080/p/a/t/h?query=string#hash');
/* =>
{ protocole : 'http:',
auth : 'utilisateur:pass',
hôte : 'host.com:8080',
port : '8080',
nom d'hôte : 'host.com',
hachage : '#hash',
recherche : '?query=string',
requête : 'query=string',
chemin : '/p/a/t/h',
chemin : '/p/a/t/h?query=string',
href : 'http://user:pass@host.com:8080/p/a/t/h?query=string#hash' }
*/


Ce qui est transmis à la méthode .parse ne doit pas nécessairement être une URL complète. Par exemple, dans la fonction de rappel du serveur HTTP, request.url ne contient pas l'en-tête du protocole ni le nom de domaine, mais il peut également être analysé à l'aide du .parse. méthode.


http.createServer(fonction (demande, réponse) {
var tmp = request.url; // => "/foo/bar?a=b"
url.parse(tmp);
/* =>
{ protocole : nul,
       barres obliques : null,
auth: nul,
Hôte : nul,
Port : nul,
Nom d'hôte : nul,
       hachage : nul,
Rechercher : '?a=b',
Requête : 'a=b',
Nom du chemin : '/foo/bar',
Chemin : '/foo/bar?a=b',
href : '/foo/bar?a=b' }
*/
}).écouter(80);


La méthode .parse prend également en charge les deuxième et troisième paramètres facultatifs de type booléen. Lorsque le deuxième paramètre est égal à true, dans l'objet URL renvoyé par cette méthode, le champ de requête n'est plus une chaîne, mais un objet paramètre converti par le module querystring. Lorsque le troisième paramètre est égal à true, cette méthode peut analyser correctement les URL sans en-têtes de protocole, telles que //www.example.com/foo/bar.

À son tour, la méthode format permet de convertir un objet URL en chaîne URL, comme indiqué ci-dessous.


Copier le code Le code est le suivant :

url.format({
Protocole : 'http:',
Hôte : 'www.example.com',
Nom du chemin : '/p/a/t/h',
Rechercher : 'query=string'
});
/* =>
'http://www.example.com/p/a/t/h?query=string'
*/

De plus, la méthode .resolve peut être utilisée pour fusionner des URL, comme indiqué ci-dessous.
Copier le code Le code est le suivant :

url.resolve('http://www.example.com/foo/bar', '../baz');
/* =>

http://www.example.com/baz

*/

Chaîne de requête

Le module querystring est utilisé pour convertir les chaînes de paramètres d'URL et les objets de paramètres les uns vers les autres. L'exemple est le suivant.

Copier le code Le code est le suivant :

querystring.parse('foo=bar&baz=qux&baz=quux&corge');
/* =>
{ foo : 'bar', baz : ['qux', 'quux'], corge : '' }
*/

querystring.stringify({ foo : 'bar', baz : ['qux', 'quux'], corge : '' });
/* =>
'foo=bar&baz=qux&baz=quux&corge='
*/
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal