Hi, this can be usefull: http://haacked.com/archive/2009/06/26/too-late-to-change-json.aspx
On Wed, Aug 5, 2009 at 4:02 PM, brownhunter <[email protected]> wrote: > > As per the docs, Douglas Crawford and Tobie Langel are the authors for > the JSON text regex, which is enforced with: > > JSON.decode.(string, {secure : true}) > > where: > .decode : function { ... > if (secure && !(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test > (string.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, ''))) return > null; > ... > } > > So, anyone care to translate the regex? Would be neat if I could get > a description in English. I'm ok at regex generally... > > All of this took me a while to find as to why I was getting a null > object in my > new Request.JSON({ onComplete : function(json, txt){ > > } > }) > > txt was coming through fine in my case where I did JSON.decode on it > locally (where default secure = false.) Couldn't figure this out, > until I set the Request.JSON option secure = false. (true is the > default in that instance). > > Other JSON.Request onCompletes were doing fine with delivering JSON > objects (as they must have passed the tuest). Took me a while to find > and figure out the secure option. > > > - - - > Finally two questions: > > 1) Anyone have a link to an explanation on what hazardous JSON syntax > is (beyond the regex text boolean? ) > 2) Why was the decision made for Request.JSON to have {secure : > true} be the default? (An error would be better than null, IMHO when > secure = true...) > > > - Hunter
