As far as I am aware, JSON supports auto-serialization of a blessed object only
if allow_blessed => 1 and convert_blessed => 1.
See https://metacpan.org/pod/JSON::PP#allow_blessed
Then in your class you need a method called TO_JSON which JSON will (attempt
to) call when it encounters it during serialization. There's a semi-lame
example here:
https://github.com/makamaka/JSON-PP/blob/master/lib/JSON/PP.pm#L2176-L2187
I have an example here, which might be more illustrative:
https://github.com/mrallen1/WebService-Geocodio/blob/master/lib/WebService/Geocodio/Location.pm#L88-L111
For deserialization you may use filter_json_object
=> https://metacpan.org/pod/JSON::PP#filter_json_object
but that may not be performant enough for your needs.
On Thursday, February 13, 2014 2:57 PM, Michael R. Davis <[email protected]>
wrote:
Perl Folks,
I need to call a JSON web service with dates. The web service uses this format
which I hear is a fairly well used JSON date format. (Note: ISO 8601 is now
the preferred format).
'/Date(1392233750000-0600)/'
What I want to do is to pass DateTime objects to and from the Perl API and have
it seamlessly translate to and from this milliseconds from epoch format.
Issues:
- I don't see a DateTime formatter that supports this format. Maybe, I just
don't know the name of the format. But, I was expecting to find
DateTime::Format::JSON::Epoch or something similar.
- I did not see an easy way to use JSON::PP mapping to map objects to strings
and back.
I'd hate to have to go through every value searching for strings that matched
/Date()/ and convert them to DateTime format. It's would be easy on the send
side as I already have hooks in my code.
Has anyone does this kind of thing before? I've searched but found nothing on
the 'Net related to Perl.
Thanks,
Mike
_______________________________________________
Houston mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/houston
Website: http://houston.pm.org/
_______________________________________________
Houston mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/houston
Website: http://houston.pm.org/