JSON::...:Daemon(3pm)
π NAME π
JSON::RPC::Legacy::Server::Daemon β JSON-RPC sever for daemon. Yes bestie, βseverβ is right there in the original, and we are not fixing it π
Okay welcome to the JSON::...:Daemon(3pm) page from User Contributed Perl Documentation β group-chat voice on, facts fully intact β¨
β¨ SYNOPSIS β¨
Okay so hereβs the whole daemon + app-class setup. Copy the code exactly, bestie β this is the iykyk part π«Ά
# Daemon version
#--------------------------
# In your daemon server script
use JSON::RPC::Legacy::Server::Daemon;
JSON::RPC::Legacy::Server::Daemon->new(LocalPort => 8080);
->dispatch({'/jsonrpc/API' => 'MyApp'})
->handle();
#--------------------------
# In your application class
package MyApp;
use base qw(JSON::RPC::Legacy::Procedure); # Perl 5.6 or more than
sub echo : Public { # new version style. called by clients
# first argument is JSON::RPC::Legacy::Server object.
return $_[1];
}
sub sum : Public(a:num, b:num) { # sets value into object member a, b.
my ($s, $obj) = @_;
# return a scalar value or a hashref or an arryaref.
return $obj->{a} + $obj->{b};
}
sub a_private_method : Private {
# ... can't be called by client
}
sub sum_old_style { # old version style. taken as Public
my ($s, @arg) = @_;
return $arg[0] + $arg[1];
}
π¦ DESCRIPTION π¦
This module is for http daemon servers using HTTP::Daemon or HTTP::Daemon::SSL. Literally thatβs the job π¦
π METHODS π
They are inherited from the JSON::RPC::Legacy::Server methods basically. The below methods are implemented in JSON::RPC::Legacy::Server::Daemon.
newβ Creates newJSON::RPC::Legacy::Server::Daemonobject. Arguments are passed toHTTP::DaemonorHTTP::Daemon::SSL.handleβ Runs server object and returns a response.retrieve_json_from_postβ retrieves a JSON request from the body inPOSTmethod.retrieve_json_from_getβ In the protocol v1.1,'GET'request method is also allowable. it retrieves a JSON request from the query string inGETmethod.responseβ returns a response JSON data to a client.
πΈ SEE ALSO πΈ
Go touch grass in these docs too πΈ:
HTTP::DaemonHTTP::Daemon::SSLJSON::RPC::Legacy::ServerJSON::RPC::Legacy::ProcedureJSON<http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html><http://json-rpc.org/wiki/specification>
π AUTHOR π
Makamaka Hannyaharamitu, <makamaka[at]cpan.org> β icon behavior π
π COPYRIGHT AND LICENSE π
Copyright 2007-2008 by Makamaka Hannyaharamitu
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Thatβs the whole page, bestie π«Ά β JSON::...:Daemon(3pm), from perl v5.42.0, dated 2015-08-27. Bye π
π¦ where this page comes from
- opensuse-leap 16.0: perl-JSON-RPC 1.06-bp160.1.11 Β· Artistic-1.0 or GPL-1.0+
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms