2011-01-12 15 views
22

Esiste la funzione codifica/decodifica codec/decode JSON in JavaScript?JSON codifica/decodifica base64 codifica/decodifica in JavaScript

+0

possibile duplicato di [Come codifica base64 all'interno di javascript] (http://stackoverflow.com/questions/3774622/how-to-base64-encode-inside-of-javascript). La ricerca è difficile, a quanto pare. http://stackoverflow.com/search?q=javascript+base64 –

+0

dai un'occhiata a: http://www.json.org/js.html – Alexar

risposta

15

Sì, btoa() e atob lavoro() in alcuni browser:

var enc = btoa("this is some text"); 
alert(enc); 
alert(atob(enc)); 
+16

'" Alcuni browser "===" Gecko e WebKit "' –

+4

@ Mur Ball. La maggior parte delle lingue rifiuterà questo :) – Ben

+5

javascript: window.opera && window.btoa && confirm ("ciao") – goat

0

Non credo che ci sia un integrato, ma ecco le funzioni per JSON in jQuery: (non può postare link visto che sono nuovo)
jQuery.getJSON
jQuery.parseJSON

e ecco un link per la codifica base64 in javascript.
http://www.webtoolkit.info/javascript-base64.html

+0

jQuery.parseJSON è stato aggiunto in 1.4 e non funziona nelle versioni precedenti. – Alexar

+0

Collegamento interrotto/vuoto –

4

Questo potrebbe essere utile per voi. Usando una combinazione di questo progetto crypto-js e Prototype per analizzare JSON ho scritto due funzioni per codificare/decodificare JSON di Base 64. (Queste funzioni non controllano per JSON non ben formattato)

 

    function JSONtoBase64(jsonObj) { 
     return Crypto.util.bytesToBase64(Crypto.charenc.UTF8.stringToBytes(Object.toJSON(jsonObj))); 
    }; 

    function base64ToJSON(bytes) { 
     var jsonString = Crypto.charenc.UTF8.bytesToString(Crypto.util.base64ToBytes(bytes)); 
     return jsonString.evalJSON(); 
    };