======================================= 様々な言語からMessagePack RPCで呼び出す ======================================= MessagePack RPC のライブラリが利用できる言語からは容易に呼び出しが可能です. 以下に呼び出しの例を示します. ``SERVICE_HOST``, ``SERVICE_PORT`` はそれぞれ,RaSCサービスが起動しているホストとポートであるとします. Perlから呼び出す ================ `AnyEvent::MPRPC `_ が必要です. .. code-block:: perl #!/bin/env perl use strict; use warnings; use utf8; use AnyEvent::MPRPC; use AnyEvent::MPRPC::Client; my $client = AnyEvent::MPRPC::Client->new( host => "SERVICE_HOST", port => "SERVICE_PORT" ); my $res = $client->call( 'analyze' => '解析する文字列' )->recv; print "$res\n"; my $reqArray = [ "一つ目の文章", "二つ目の文章" ]; my $resArray = $client->call( 'analyzeArray' => [ $reqArray ] )->recv; print join("\n", @$resArray); Pythonから呼び出す ================== `msgpackrpc `_ が必要です. .. code-block:: python # coding:utf-8 import msgpackrpc client = msgpackrpc.Client(msgpackrpc.Address( "SERVICE_HOST", SERVICE_PORT)) result = client.call('analyze', "解析する文字列") print(result) resultArray = client.call('analyzeArray', [ "一つ目の文章", "二つ目の文章" ]) print("\n".join(resultArray)) Rubyから呼び出す ================== `msgpack-rpc `_ が必要です. .. code-block:: ruby # -*- coding: utf-8 -*- require 'msgpack/rpc' client = MessagePack::RPC::Client.new('SERVICE_HOST', SERVICE_PORT) result = client.call(:analyze, "解析する文字列") print(result) resultArray = client.call(:analyzeArray, [ "一つ目の文章", "二つ目の文章" ]) print(resultArray.join("\n"))