Je veux encoder cette URL:
SELECT name FROM user WHERE uid = me()
Dois-je télécharger un module pour cela? J'ai déjà le module de demande.
javascript
url
node.js
TIMEX
la source
la source
Réponses:
Vous pouvez utiliser JavaScript
encodeURIComponent
:la source
decodeURIComponent
c'est ainsi que vous décodez l'URI codé. De rien.Le module intégré
querystring
est ce que vous recherchez:la source
Utilisez la
escape
fonction dequerystring
. Il génère une chaîne sécurisée URL.la source
querystring.stringify()
(dans la réponse de Nicolas) semble renvoyer une chaîne vide maintenant.querystring.escape()
méthode est utilisée parquerystring.stringify()
et ne devrait généralement pas être utilisée directement."Notez que le codage URI est bon pour la partie requête, ce n'est pas bon pour le domaine. Le domaine est codé à l'aide de punycode. Vous avez besoin d'une bibliothèque comme URI.js pour convertir entre un URI et IRI (Internationalized Resource Identifier).
Ceci est correct si vous prévoyez d'utiliser la chaîne ultérieurement comme chaîne de requête:
Si vous ne voulez pas de caractères ASCII aiment
/
,:
et?
à être échappés, utilisez à laencodeURI
place:Cependant, pour d'autres cas d'utilisation, vous pourriez avoir besoin d' uri-js à la place:
la source
encodeURIComponent (string) le fera:
Passer SQL dans une chaîne de requête n'est peut-être pas un bon plan,
voir celui-ci
la source