M.C.P.C.

―むり・くり―プラスコミュニケーション(更新終了)


| トップページ |

2007年6月 7日 20:41

XMLRPC::LiteでHello, World!

このエントリーをはてなブックマークに追加 mixiチェック

XML-RPC のサーバ を作ろうと思っていろいろ調べても、Hello, World! 程度の情報をすっ飛ばして書いているんです。「Perl クックブック VOLUME 2 pp.934-936 レシピ18.12 XML-RPC クライアントを書く」がちょうど該当しているんですけれども、ぜんぜんちょちょらです。なんですか、カーゴカルト殲滅作戦ですか?

つうわけで、さんざんググって時間ばかり食っちゃったので、ちゃんと動いたコードを載っけます。

server.cgi(http サーバで CGI として実行できるように設定しておく)

#!/usr/bin/perl
use strict;
use warnings;
 
use XMLRPC::Transport::HTTP;
 
XMLRPC::Transport::HTTP::CGI
  -> dispatch_to('ClassName')
  -> handle;
 
 
package ClassName;
 
sub handler {
  return 'Hello, World!';
}
 
1;


client.pl(ホームディレクトリに置いたらどうだろう)

#!/usr/bin/perl
use strict;
use warnings;
 
use XMLRPC::Lite;
 
my $res = XMLRPC::Lite
            -> proxy('http://labo.dtpwiki.jp/xmlrpc/server.cgi')
            -> call ('ClassName.handler', )
            -> result;
print "$res\n";


実行結果(Linuxで自分のホームディレクトリで実行したよ)

[cl@labo ~]# perl client.pl
Hello, World!
[cl@labo ~]#

やっと動いた!

~~~

なお、サーバ側で、blog のスパムコメント対策のために、mod_security が動いていたりすると、上手く動かないことがあります。対象除外にしましょう。

投稿 大野 義貴 [Perl] | |

トラックバック(1)

トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/2099

こんにちは! この前会社のCentOS4のサーバをyumったらPerl5.8.5... 続きを読む

コメントする