NAME

Error::Pure::HTTP::JSON::Advance - Error::Pure module for JSON output with additional parameters over HTTP.

SYNOPSIS

use Error::Pure::HTTP::JSON::Advance qw(err);

err 'This is a fatal error', 'name', 'value';

SUBROUTINES

err

Process error in JSON format with messages @messages. Output affects $Error::Pure::Output::JSON::PRETTY variable.

EXAMPLE1

use strict;
use warnings;

use Error::Pure::HTTP::JSON::Advance qw(err);

# Additional parameters.
%Error::Pure::HTTP::JSON::Advance::ERR_PARAMETERS = (
        'status' => 1,
        'message' => 'Foo bar',
);

# Error.
err '1';

# Output like:
# Content-type: application/json
#
# {"status":1,"error-pure":[{"msg":["1"],"stack":[{"sub":"err","prog":"example1.pl","args":"(1)","class":"main","line":17}]}],"message":"Foo bar"}

EXAMPLE2

use strict;
use warnings;

use Error::Pure::HTTP::JSON::Advance qw(err);

# Additional parameters.
%Error::Pure::HTTP::JSON::Advance::ERR_PARAMETERS = (
        'status' => 1,
        'message' => 'Foo bar',
);

# Error.
err '1', '2', '3';

# Output like:
# Content-type: application/json
#
# {"status":1,"error-pure":[{"msg":["1","2","3"],"stack":[{"sub":"err","prog":"example2.pl","args":"(1, 2, 3)","class":"main","line":17}]}],"message":"Foo bar"}

EXAMPLE3

use strict;
use warnings;

use Error::Pure::Output::JSON;
use Error::Pure::HTTP::JSON::Advance qw(err);

# Additional parameters.
%Error::Pure::HTTP::JSON::Advance::ERR_PARAMETERS = (
        'status' => 1,
        'message' => 'Foo bar',
);

# Pretty print.
$Error::Pure::Output::JSON::PRETTY = 1;

# Error.
err '1';

# Output like:
# Content-type: application/json
#
# {
#    "status" : 1,
#    "error-pure" : [
#       {
#          "msg" : [
#             "1"
#          ],
#          "stack" : [
#             {
#                "sub" : "err",
#                "prog" : "example3.pl",
#                "args" : "(1)",
#                "class" : "main",
#                "line" : 21
#             }
#          ]
#       }
#    ],
#    "message" : "Foo bar"
# }

DEPENDENCIES

Error::Pure::Utils, Error::Pure::Output::JSON, Exporter, List::Util, Readonly.

SEE ALSO

Task::Error::Pure

Install the Error::Pure modules.

REPOSITORY

https://github.com/michal-josef-spacek/Error-Pure-JSON

AUTHOR

Michal Josef Špaček mailto:skim@cpan.org

http://skim.cz

LICENSE AND COPYRIGHT

© 2013-2023 Michal Josef Špaček

BSD 2-Clause License

VERSION

0.06