Content
2004/11/15 05:08:38XMLRPCfor5_6 - XML·Ï¥â¥¸¥å¡¼¥ë¤¬»È¤¨¤Ê¤¤´Ä¶¤Î¤¿¤á¤ÎXML-RPC¥¯¥é¥¤¥¢¥ó¥È
¢£ XMLRPCfor5_6 - XML·Ï¥â¥¸¥å¡¼¥ë¤¬»È¤¨¤Ê¤¤´Ä¶¤Î¤¿¤á¤ÎXML-RPC¥¯¥é¥¤¥¢¥ó¥È
NAME ̾¾Î
XMLRPCfor5_6 - XML·Ï¥â¥¸¥å¡¼¥ë¤¬»È¤¨¤Ê¤¤´Ä¶¤Î¤¿¤á¤ÎXML-RPC¥¯¥é¥¤¥¢¥ó¥È
SYNOPSIS ³µÍ×
use XMLRPCfor5_6;
$client = XMLRPCfor5_6->new;
$client->proxy('http://domain.com/api');
$req = $client->request($method, $value, \@array, \%struct);
$res = $client->call($req);
unless ( $res->is_success ) { print $res->error_code; exit; }
print $res->as_string; # ¼õ¤±¼è¤Ã¤¿XML¤Î¸¶Ê¸
$result = $res->result; # ¼õ¤±¼è¤Ã¤¿XML¤ò²òÀϤ·¤¿·ë²Ì¤Î¥Ç¡¼¥¿
DESCRIPTION ÀâÌÀ
Ä̾XML-RPC¤òPerl¤Ç°·¤¦¤Ë¤Ï¡¢¤½¤Î¤â¤ÎXMLRPC::Lite¤äFrontier::Client¤Î¤è¤¦¤Ê¥â¥¸¥å¡¼¥ë¤ò»È¤¦¤Î¤¬ºÇ¤âÌäÂ꤬¤¢¤ê¤Þ¤»¤ó¡£ ¤±¤ì¤É¡¢Ãæ¤Ë¤Ï¤½¤¦¤¤¤¦¥â¥¸¥å¡¼¥ë¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤Ê¤É¤ÎÌäÂê¤òÊú¤¨¤¿´Ä¶¤â¤¢¤ëÌõ¤Ç¡¢¤½¤¦¸À¤Ã¤¿´Ä¶¤Î¤¿¤á¤Ë¥¤¥ó¥¹¥È¡¼¥ëºî¶È¤Ê¤·¤Ç»È¤¨¤ë¤è¤¦¤Ëºî¤é¤ì¤¿¤Î¤¬¤³¤Î¥â¥¸¥å¡¼¥ë¤Ç¤¹¡£ ÆâÉôŪ¤Ë»È¤ï¤ì¤Æ¤¤¤ë¤Î¤Ï¡¢LWP::UserAgent¥â¥¸¥å¡¼¥ë¤È¡¢¤³¤Î¥â¥¸¥å¡¼¥ë¤ÈƱ¤¸ºî¼Ô¤Ë¤è¤ëTag¥â¥¸¥å¡¼¥ë¤À¤±¤Ç¤¹¡£
METHODS
new
- ÀâÌÀ¡§¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥ó¥¹¥È¥é¥¯¥¿
- °ú¿ô¡§ºîÀ®¤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Ë»ý¤¿¤»¤¿¤¤¥Ç¡¼¥¿¤ò¥Ï¥Ã¥·¥å¤Ç¡£
- ÊÖÃÍ¡§¥ª¥Ö¥¸¥§¥¯¥È¤½¤Î¤â¤Î
- ²òÀâ
¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç¤¹¡£
proxy
- ÀâÌÀ¡§Ì䤤¹ç¤ï¤»¤ò¤¹¤ë¥Í¥Ã¥È¾å¤ÎAPI¤ÎURL¤òÀßÄê¡¢¼èÆÀ¤·¤Þ¤¹¡£
- °ú¿ô¡§Ì䤤¹ç¤ï¤»¤ò¤¹¤ë¥Í¥Ã¥È¾å¤ÎAPI¤ÎURL
- ÊÖÃÍ¡§ºÇ¿·ÀßÄê¤ÎAPI¤ÎURL
- ²òÀâ
Ì䤤¹ç¤ï¤»Àè¤òÀßÄꤷ¤Þ¤¹¡£°ú¿ô¤Ê¤·¤Ç¸Æ¤Ó½Ð¤·¤¿¾ì¹ç¤Ï¡¢¾ðÊó¼èÆÀ¥á¥½¥Ã¥É¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
ua
- ÀâÌÀ¡§¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥È¤òÀßÄê¡¢¼èÆÀ¤·¤Þ¤¹¡£
- °ú¿ô¡§LWP::UserAgent¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥È
- ÊÖÃÍ¡§¸½ºßÀßÄꤵ¤ì¤Æ¤¤¤ë¥ª¥Ö¥¸¥§¥¯¥È
- ²òÀâ
¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
°ú¿ô¤ËÍ¿¤¨¤é¤ì¤ë¤Î¤Ï¡¢LWP::UserAgent¥¯¥é¥¹¡Ê¤È¤½¤Î»Ò¥¯¥é¥¹¡Ë¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ë¸ÂÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ °ú¿ô¤Ê¤·¤Ê¤é¤Ð¡¢ÀßÄꤵ¤ì¤Æ¤¤¤ë¥ª¥Ö¥¸¥§¥¯¥È¼«¿È¤¬Ê֤äƤ¤Þ¤¹¡£ ¤â¤·¥ª¥Ö¥¸¥§¥¯¥È¤òºî¤Ã¤¿Ä¾¸å¤Ë°ú¿ô¤Ê¤·¤Ç¸Æ¤Ó½Ð¤·¤¿¾ì¹ç¤Ï¡¢¥ª¥Ö¥¸¥§¥¯¥È¤¬¼«Æ°Åª¤ËLWP::UserAgent¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢¥×¥í¥°¥é¥à¤Î¾¤ÎÉôʬ¤ÇLWP::UserAgent¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ò»È¤Ã¤Æ¤¤¤¿¾ì¹ç¡¢¶¦Í¤¹¤ë¤³¤È¤Ç¥á¥â¥ê¡¼¤ÎÀáÌó¤òÁÀ¤¦¤¿¤á¤Î»ÅÍͤǤ¹¡£
tag
- ÀâÌÀ¡§¥¿¥°À¸À®¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è¤ê°·¤¤¤Þ¤¹¡£
- °ú¿ô¡§$object->tag¤È¤¹¤ë¤È¡¢¥¿¥°¤¬Ìá¤Ã¤Æ¤¯¤ë¤è¤¦¤Ê¥ª¥Ö¥¸¥§¥¯¥È
- ÊÖÃÍ¡§¸½ºßÀßÄꤵ¤ì¤Æ¤¤¤ë¥ª¥Ö¥¸¥§¥¯¥È
- ²òÀâ
XML¤ò¼è¤ê°·¤¦¾å¤Ç¡¢¥¿¥°¤ÎÀ¸À®¤Ï½ÅÍפÊÍ×ÁǤǤ¹¡£ ¥¿¥°À¸À®¤ÇºÇ¤â¥Ð¥°¤¬¾¯¤Ê¤¤¤È»×¤ï¤ì¤ë¤Î¤Ï¡¢CGI¥â¥¸¥å¡¼¥ë¤Ç¤¹¡£ ¤·¤«¤·CGI¥â¥¸¥å¡¼¥ë¤ÏÈó¾ï¤ËÂ礤¯¡¢¤³¤ì¤ò¤ï¤º¤«¤ÊÌ䤤¹ç¤ï¤»¤Î¤¿¤á¤ËÉÔɬÍפÊÉôʬ¤â´Þ¤á¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Î¤Ï¥ê¥½¡¼¥¹¤ò°µÇ÷¤¹¤ë¤Ç¤·¤ç¤¦¡£ ¤½¤³¤Ç¡¢CGI¥â¥¸¥å¡¼¥ë¤«¤é¥¿¥°À¸À®µ¡Ç½¤Î¤ß¤òÀÚ¤ê½Ð¤·¤¿ÉÔ´°Á´¥¯¥í¡¼¥ó¤Ç¤¢¤ë¤È¤³¤í¤ÎTag¥â¥¸¥å¡¼¥ë¤òºîÀ®¤·¤Þ¤·¤¿¡£ ¥ª¥Ö¥¸¥§¥¯¥È¤òºî¤Ã¤¿Ä¾¸å¤Ë¡¢Tag¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ò¤³¤Î¥á¥½¥Ã¥É¤òÄ̤¸¤ÆÍ¿¤¨¤Æ¤¯¤À¤µ¤¤¡£¤½¤¦¤¹¤ì¤Ð¡¢ÍÚ¤«¤Ë¾¯¤Ê¤¤¥á¥â¥ê¡¼¤Çưºî¤¹¤ë¤Ç¤·¤ç¤¦¡£ ¤â¤·¡¢ºÇ½é¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤òÍ¿¤¨¤º¤Ë°ú¿ô¤Ê¤·¤Ç¤³¤Î¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¤·¤Þ¤Ã¤¿¾ì¹ç¤Ï¡¢ÍƼϤʤ¯CGI¥â¥¸¥å¡¼¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£
request
- ÀâÌÀ¡§ÀèÊý¤ËÁ÷¤ë¥ê¥¯¥¨¥¹¥È¤òºîÀ®¤·¤Þ¤¹¡£
- °ú¿ô¡§¥á¥½¥Ã¥É¤ÈÁ÷¤ë¥Ç¡¼¥¿
- ÊÖÃÍ¡§¥ê¥¯¥¨¥¹¥È¤Î¥ª¥Ö¥¸¥§¥¯¥È
- ²òÀâ
¤¢¤é¤«¤¸¤á¤³¤Î¥á¥½¥Ã¥É¤Ç¥ê¥¯¥¨¥¹¥È¤òºîÀ®¤·¤Æ¤ª¤¤Þ¤¹¡£¤½¤¦¤¹¤ë¤³¤È¤Ç¡¢Æ±¤¸¥ê¥¯¥¨¥¹¥È¤òÁ÷¤ëºÝ¤Ë²¿ÅÙ¤âºÆºîÀ®¤»¤º¤ËºÑ¤ß¤Þ¤¹¡£ °ú¿ô¤Ë¤Ï¡¢¥á¥½¥Ã¥É¤òÀèÆ¬¤ËÁ÷¤ë¥Ç¡¼¥¿¤òÇÛÎó¤ÇÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£¥¹¥«¥é¡¼¤Ï¤½¤Î¤Þ¤Þ¡¢ÇÛÎó¥ê¥Õ¥¡¥ì¥ó¥¹¤È¥Ï¥Ã¥·¥å¥ê¥Õ¥¡¥ì¥ó¥¹¤Ï¤½¤ì¤¾¤ìarray¤Èstruct¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£
call
- ÀâÌÀ¡§API¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
- request¥á¥½¥Ã¥É¤ÇºîÀ®¤·¤¿¥ê¥¯¥¨¥¹¥È¥ª¥Ö¥¸¥§¥¯¥È
- ÊÖÃÍ¡§·ë²Ì¤òÆâÊñ¤·¤¿¥ª¥Ö¥¸¥§¥¯¥È
- ²òÀâ
¥á¥¤¥ó¤Ë¤Ê¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
$client = XMLRPCfor5_6->new;
$client->proxy('url');
$request = $client->request('method', @data);
$responce = $client->call($request);
°ú¿ô¤È¤·¤Æ¡¢request¥á¥½¥Ã¥É¤ÈƱ¤¸¤â¤Î¤òÍ¿¤¨¤ë¤È¡¢ÆâÉô¤Çrequest¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¤«¤é¥³¡¼¥ë¤ò»Ï¤á¤Þ¤¹¡£
¤Ê¤ª¡¢ÆÀ¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ·¤Æ¡¢result¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢ÆÀ¤é¤ì¤¿XML¤ò²òÀϤ·¤¿ÇÛÎó¤Ê¤ê¥Ï¥Ã¥·¥å¥ê¥Õ¥¡¥ì¥ó¥¹¤Ê¤ê¤¬ÆÀ¤é¤ì¤Þ¤¹¡£¤³¤Î½ÐÎÏÆâÍÆ¤ÏUTF-8¤Î¤Þ¤Þ¤Ê¤Î¤Ç¡¢É½¼¨¤ÎºÝ¤Ë¤ÏÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£