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

Reply via email to