Apache...::JSON(3pm)
π Apache::Session::Serialize::JSON β the manual, but make it make sense π
okay so real quick before we dive in: this page lives in the perl manual, section 3pm (that's "perl module docs" for the uninitiated), and the header up top literally reads Apache...::JSON(3pm) β yes the name got chopped, no I don't know why, don't come for me π«Ά. The actual module is Apache::Session::Serialize::JSON and bestie, it's a tiny one. Let's go.
β¨ NAME β¨
Apache::Session::Serialize::JSON β the glow-up that turns your session data into JSON so it can be "zipped up" and sent on its way π
π SYNOPSIS π
two import lines and you're literally done. that's it. that's the whole API:
use Apache::Session::Serialize::JSON;
$zipped = Apache::Session::Serialize::JSON::serialize($ref);
$ref = Apache::Session::Serialize::JSON::unserialize($zipped);
so serialize takes your $ref and gives you back $zipped (a string), and unserialize takes that $zipped string and hands you back your $ref. round trip, matching set, no notes π
π¦ DESCRIPTION π¦
okay so here's the tea β β this module fulfills the serialization interface of Apache::Session. meaning: Apache::Session expects something to do the "turn my data into a blob and back again" job, and this module said "say less, I got it" π«‘
how does it do it? it serializes the data in the session object by use of JSON β specifically via the "to_json" and "from_json" functions. and the serialized data? it's UTF-8 text, no cap. so your bytes are safe, your vibes are immaculate, and your session data is out here being all readable and portable.
π SEE ALSO π
go give these icons some love:
JSONβ the actual JSON machinery doing the heavy liftingApache::Sessionβ the parent situation that this module plugs into
iykyk π
π BUG REPORT π
found a bug? need a feature? don't suffer in silence bestie π β use the OW2 system to report a bug or ask for features:
that's the whole instruction. go fill out the ticket, be specific, we're rooting for you π«Ά
alternate note: don't just vaguepost about it. file the ticket. the maintainers can't fix what they can't see β¨
β COPYRIGHT AND LICENSE β
the credits roll π¬ β full list, exactly as it stands:
2009-2025 by Xavier Guimard
2013-2025 by ClΓ©ment Oudot
2019-2025 by Maxime Besson
2013-2025 by Worteks
2023-2025 by Linagora
and now the legal bit, which is still important even though it's giving paperwork energy π:
This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
β οΈ okay but actually read that warranty part again β WITHOUT ANY WARRANTY, the all-caps is doing the heavy lifting, so like. yes. don't sue anyone if it breaks. that's the deal, bestie π
and that's the whole page, you're officially certified πβ¨ this doc drop was perl v5.40.1, dated 2026-05-14 β so go forth, serialize responsibly, and may all your session data be UTF-8 ππ
π¦ where this page comes from
- debian trixie: libapache-session-browseable-perl 1.3.16-1+deb13u1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libapache-session-browseable-perl 1.3.19-1 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms