Existe-t-il une fonction d'encodage/décodage JSON encoder/décoder en base64 en JavaScript?
Oui, btoa () et atob () fonctionnent dans certains navigateurs:
var enc = btoa("this is some text");
alert(enc);
alert(atob(enc));
JSON et base64 sont complètement indépendants.
Voici un stringifier/analyseur JSON (et lien direct GitHub ).
Cela pourrait être utile pour vous. En utilisant une combinaison de ce projet crypto-js et de Prototype pour analyser le code JSON, j'ai écrit deux fonctions pour coder/décoder le code JSON en Base 64. (Ces fonctions ne vérifient pas le format json mal formaté)
fonction JSONtoBase64 (jsonObj) { renvoyer Crypto.util.bytesToBase64 (Crypto.charenc.UTF8.stringToBytes (Object.toJSON (jsonObj))); }; fonction base64ToJSON (octets) { var jsonString = Crypto.charenc.UTF8.bytesToString (Crypto.util.base64ToBytes (bytes)); retourne jsonString.evalJSON (); };
Pour les navigateurs autres que Mozilla, utilisez: http://www.webtoolkit.info/javascript-base64.html
Pour les navigateurs Mozilla, utilisez btoa()
et atob()
.
Je ne pense pas qu'il y en ait un intégré, mais voici les fonctions pour JSON dans jQuery:
jQuery.getJSON
jQuery.parseJSON
et voici un lien pour l'encodage base64 en javascript.
http://www.webtoolkit.info/javascript-base64.html