GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  JSON::RPC::LEGACY::CLIENT (3)

.ds Aq ’

NAME

JSON::RPC::Legacy::Client - Perl implementation of JSON-RPC client

CONTENTS

SYNOPSIS



   use JSON::RPC::Legacy::Client;
  
   my $client = new JSON::RPC::Legacy::Client;
   my $url    = http://www.example.com/jsonrpc/API;
  
   my $callobj = {
      method  => sum,
      params  => [ 17, 25 ], # ex.) params => { a => 20, b => 10 } for JSON-RPC v1.1
   };
  
   my $res = $client->call($uri, $callobj);
  
   if($res) {
      if ($res->is_error) {
          print "Error : ", $res->error_message;
      }
      else {
          print $res->result;
      }
   }
   else {
      print $client->status_line;
   }
  
  
   # Easy access
  
   $client->prepare($uri, [sum, echo]);
   print $client->sum(10, 23);



DESCRIPTION

This is JSON-RPC Client. See <http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html>.

Gets a perl object and convert to a JSON request data.

Sends the request to a server.

Gets a response returned by the server.

Converts the JSON response data to the perl object.

JSON::RPC::Legacy::Client

    METHODS

$client = JSON::RPC::Legacy::Client->new Creates new JSON::RPC::Legacy::Client object.
$response = $client->call($uri, $procedure_object) Calls to $uri with $procedure_object. The request method is usually POST. If $uri has query string, method is GET.

About ’GET’ method, see to <http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html#GetProcedureCall>.

Return value is JSON::RPC::Legacy::ReturnObject.

$client->prepare($uri, $arrayref_of_procedure) Allow to call methods in contents of $arrayref_of_procedure. Then you can call the prepared methods with an array reference or a list.

The return value is a result part of JSON::RPC::Legacy::ReturnObject.



   $client->prepare($uri, [sum, echo]);
  
   $res = $client->echo(foobar);  # $res is foobar.
  
   $res = $client->sum(10, 20);     # sum up
   $res = $client->sum( [10, 20] ); # same as above



If you call a method which is not prepared, it will croak.

Currently, <B>can’t call any method names as same as built-in methodsB>.

version Sets the JSON-RPC protocol version. 1.1 by default.
id Sets a request identifier. In JSON-RPC 1.1, it is optional.

If you set version 1.0 and don’t set id, the module sets ’JSON::RPC::Legacy::Client’ to it.

ua Setter/getter to LWP::UserAgent object.
json Setter/getter to the JSON coder object. Default is JSON, likes this:



   $self->json( JSON->new->allow_nonref->utf8 );
  
   $json = $self->json;



This object serializes/deserializes JSON data. By default, returned JSON data assumes UTF-8 encoded.

status_line Returns status code; After call a remote procedure, the status code is set.
create_json_coder (Class method) Returns a JSON de/encoder in new. You can override it to use your favorite JSON de/encoder.

JSON::RPC::Legacy::ReturnObject

call method or the methods set by prepared returns this object. (The returned JSON data is decoded by the JSON coder object which was passed by the client object.)

    METHODS

is_success If the call is successful, returns a true, otherwise a false.
is_error If the call is not successful, returns a true, otherwise a false.
error_message If the response contains an error message, returns it.
result Returns the result part of a data structure returned by the called server.
content Returns the whole data structure returned by the called server.
jsontext Returns the row JSON data.
version Returns the version of this response data.

JSON::RPC::Legacy::ServiceObject

RESERVED PROCEDURE

When a client call a procedure (method) name ’system.foobar’, JSON::RPC::Legacy::Server look up MyApp::system::foobar.

<http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html#ProcedureCall>

<http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html#ServiceDescription>

There is JSON::RPC::Legacy::Server::system::describe for default response of ’system.describe’.

SEE ALSO

<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>

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.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 JSON::RPC::LEGACY::CLIENT (3) 2016-04-03

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.