Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung der Konvertierung von URL-Zeichenfolgen und Abfragezeichenfolgen in nodejs_node.js

Detaillierte Erläuterung der Konvertierung von URL-Zeichenfolgen und Abfragezeichenfolgen in nodejs_node.js

WBOY
WBOYOriginal
2016-05-16 16:30:141585Durchsuche

In einer vollständigen URL-Zeichenfolge wird der Teil von „?“ (außer ?) bis „#“ (falls # existiert) oder bis zum Ende der URL-Zeichenfolge (falls # nicht existiert) als Abfragezeichenfolge bezeichnet.

Sie können die Parse-Methode im Query String-Modul verwenden, um die Zeichenfolge in ein Objekt umzuwandeln. Die Parse-Methode wird wie folgt verwendet:

querystring.parse(str,[sep],[eq],[options]);

str stellt die konvertierte Abfragezeichenfolge

dar

sep. Das Trennzeichen in der Zeichenfolge, der Standardwert ist &

Gl. Das Zuordnungszeichen in dieser Zeichenfolge ist standardmäßig =."="Die linke Seite ist der Schlüssel und die rechte Seite ist der Wert

Optionen: ist ein Objekt. Sie können das maxKeys-Attribut eines ganzzahligen Werttyps im Objekt verwenden, um die Anzahl der Attribute im konvertierten Objekt anzugeben. Wenn der maxKeys-Attributwert auf 0 gesetzt ist, entspricht dies der Wirkung mit maxKeys. Attributwert

Code kopieren Der Code lautet wie folgt:

var querystring=require("querystring");
var str="username=guoyansi&age=40&sex=male";
var res=querystring.parse(str);
console.log("1:%j",res);//1:{"username": "guoyansi", "age": "40", "sex": "männlich"}
res=querystring.parse(str,"!");
console.log("2:%j",res);//2:{"username":"guoyansi&age=40&sex=male"}
res=querystring.parse(str,"&");
console.log("3:%j",res);//3:{"username": "guoyansi", "age": "40", "sex": "männlich"}
str="username=guoyansi!age=40!sex=male";
res=querystring.parse(str,"!");
console.log("4:%j",res);//4:{"username": "guoyansi", "age": "40", "sex": "männlich"}
res=querystring.parse(str,"!","=");
console.log("5:%j",res);//5:{"username": "guoyansi", "age": "40", "sex": "männlich"}
res=querystring.parse(str,"!",":");
console.log("6:%j",res);//6:{"username=guoyansi":"","age=40":"","sex=male":""}
res=querystring.parse(str,"!","=",{maxKeys:2});
console.log("7:%j",res);//7:{"username":"guoyansi", "age"::40"}

Stringify ist ein Format, das Zeichenfolgen in Abfragezeichenfolgen umwandelt.

querystring.stringify(obj,[sep],[eq])

Code kopieren Der Code lautet wie folgt:

var querystring=require("querystring");
var res= querystring.stringify({"username": "guoyansi", "age": "40", "sex": "männlich"});
console.log(res);//username=guoyansi&age=40&sex=male
res=querystring.stringify({"username": "guoyansi", "age": "40", "sex": "männlich"},"!");
console.log(res);//username=guoyansi!age=40!sex=male
res=querystring.stringify({"username": "guoyansi", "age": "40", "sex": "männlich"},"&",::);
console.log(res);//username:guoyansi&age:40&sex:male
res=querystring.stringify({"username":"guoyansi","age":["40","24"]},"&","=");
console.log(res);//username=guoyansi&age=40&age=24

Im URL-Modul können Sie die parse()-Methode verwenden, um die URL-Zeichenfolge in ein Objekt umzuwandeln. Abhängig von den unterschiedlichen Inhalten in der URL-Zeichenfolge sind die Attribute, die das Objekt haben kann, und ihre Bedeutung wie folgt.

href: Die konvertierte ursprüngliche URL-Zeichenfolge.
Protokoll: Das vom Client verwendete Protokoll, wenn er Anfragen stellt.
Schrägstriche: Verwenden Sie das Trennzeichen „//“ zwischen dem Protokoll und dem Pfad.
host: Die vollständige Adresse und Portnummer in der URL-Zeichenfolge. Die Adresse kann eine IP-Adresse oder ein Hostname sein auth: Der Authentifizierungsinformationsteil in der URL-Zeichenfolge.
Hostname: Die vollständige Adresse in der URL-Zeichenfolge, bei der es sich um eine IP-Adresse oder einen Hostnamen handeln kann Suche: Die Abfragezeichenfolge in der URL-Zeichenfolge, einschließlich des Startzeichens „?“
Pfad: Der Pfad in der URL-Zeichenfolge, einschließlich der Abfragezeichenfolge.
Abfrage: Die Abfragezeichenfolge in der URL-Zeichenfolge enthält nicht das Startzeichen „?“ oder das basierend auf der Abfragezeichenfolge konvertierte Objekt (der Abfrageattributwert wird basierend auf den in der parse()-Methode verwendeten Parametern bestimmt); 🎜> Hash: die Hash-Zeichenfolge in der URL-Zeichenfolge, einschließlich des Startzeichens „#“.

url.parse(urlstr,[parseQueryString]);
urlStr: ist die URL-Zeichenfolge, die konvertiert werden muss,
parseQueryString: ist ein boolescher Wert. Wenn der Parameter true ist, wird das Querystring-Modul intern verwendet, um die Abfragezeichenfolge in ein Objekt umzuwandeln. Der Standardwert ist false


Code kopieren

Der Code lautet wie folgt: var url=require("url"); var str="
http://user:pass@host,com:8080/users/user.php?username=sisi&age=24&sex=male#name1
";
var res=url.parse(str);
console.log(res);

Code kopieren Der Code lautet wie folgt:

{ Protokoll: 'http:',
Schrägstriche: wahr,
auth: 'user:pass',
host: 'host:8080',
Port: '8080',
Hostname: 'Host',
Hash: '#name1',
Suche: '?username=sisi&age=24&sex=male',
Abfrage: 'Benutzername=sisi&age=24&sex=männlich',
Pfadname: '/,com/users/user.php',
Pfad: '/,com/users/user.php?username=sisi&age=24&sex=male',
href: 'http://user:pass@host:8080/,com/users/user.php?username=sisi&age=24&sex=male#name1' }

Code kopieren Der Code lautet wie folgt:

var url=require("url");
var str="http://user:pass@host,com:8080/users/user.php?username=sisi&age=24&sex=male#name1";
var res=url.parse(str,true);
console.log(res);

Code kopieren Der Code lautet wie folgt:

{ Protokoll: 'http:',
Schrägstriche: wahr,
auth: 'user:pass',
host: 'host:8080',
Port: '8080',
Hostname: 'Host',
Hash: '#name1',
Suche: '?username=sisi&age=24&sex=male',
Abfrage: { Benutzername: 'sisi', Alter: '24', Geschlecht: 'männlich' },
Pfadname: '/,com/users/user.php',
Pfad: '/,com/users/user.php?username=sisi&age=24&sex=male',
href: 'http://user:pass@host:8080/,com/users/user.php?username=sisi&age=24&sex=male#name1' }

Der Unterschied zwischen dem ersten Beispiel und dem zweiten Beispiel ist der zweite Parameter von parse, der zu einer anderen Abfrage im Ergebnis führt

Sie können ein URL-konvertiertes Objekt in eine URL-Zeichenfolge konvertieren.

Code kopieren Der Code lautet wie folgt:

var url=require("url");
var str="http://user:pass@host,com:8080/users/user.php?username=sisi&age=24&sex=male#name1";
var res=url.parse(str,true);
console.log(url.format(res));

Das Ergebnis ist:

http://user:pass@host:8080/,com/users/user.php?username=sisi&age=24&sex=male#name1

Oben dreht sich alles um die Konvertierung von URL-Zeichenfolgen und Abfragezeichenfolgen in Knoten. Wenn Sie es sorgfältig studieren, ist es eigentlich ganz einfach.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn