私は次のコードを持っています...
<?php
include("lib/xmlrpc.inc");
$email='whatever@hotmail.com';
$c=new xmlrpc_client("/register/index.php", "ws.myserver.com", 80);
$f=new xmlrpcmsg('existsEmail', array(new xmlrpcval($email, "base64")));
print "<pre>" . htmlentities($f->serialize( )) . "</pre>";
$r=$c->send($f);
$v=$r->value( );
if (!$r->faultCode( )) {
print "Email is". $email . " is " .
$v->scalarval( ) . "<br />";
print "<hr />I got this value back<br /><pre>" .
htmlentities($r->serialize( )). "</pre><hr />\n";
} else {
print "Fault: ";
print "Code: " . $r->faultCode( ) .
" Reason '" .$r->faultString( )."'<br />";
}
?>
http://ws.myserver.com/register/index.phpにある WebService を使用する必要があります。
メールをパラメーターとして渡すと、XMLRPC.inc ライブラリが base64 を使用してエンコードします。
以下に示す適切な XML 要求があります。
<?xml version="1.0"?>
<methodCall>
<methodName>existsEmail</methodName>
<params>
<param>
<value><base64>dnJvZHJpZ3VlekBpY2NrLm5ldC5jbw==</base64></value>
</param>
</params>
</methodCall>
BUUUT、サーバーから応答を取得しようとしたときに、次のエラーが発生しました
Fault: Code: -32601 Reason 'server error. requested method not found'
何か案は?PHPコードからexistsEmailメソッドを呼び出す方法に夢中になっています...そこにあると確信していますが、何か不足しているかどうかはわかりません..