[PHP-users 35009] Re: Zend_XmlRpc_ClientをSSLで使う
eijun
eijun @ hal.ne.jp
2010年 2月 18日 (木) 02:14:18 JST
こんばんは、北村です。
自己レスです。
自信ないですが、Zend_XmlRpc_Clientについて、下記のコードでSSL通信でき
たっぽいです。
require_once 'Zend/XmlRpc/Client.php';
require_once 'Zend/Http/Client/Adapter/Curl.php';
//http_Clientのパラメータ(自己認証です)
$options = array('adapter' => 'Zend_Http_Client_Adapter_Curl',
'curloptions' => array(CURLOPT_FOLLOWLOCATION => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false));
//http_Clientのインスタンス
$client = new Zend_Http_Client('https://localhost/foo', $options);
//XmlRpc_Clientのインスタンス
※引数を空欄にするとエラーになるのでnullをセット
$rpcClient = new Zend_XmlRpc_Client(null);
//XmlRpcクライアントにhttp_Clientをセット
$rpcClient->setHttpClient($client);
$vals = array('user1',
'password',
array(128,9,5,67,9));
//リモートメソッドをコール
var_dump($rpcClient->call('someclass.somefunction', $vals));
これで、エラーなく実行できましたし、パケットをキャプチャしたら、SSLが効
いていたようです。
Zend_XmlRpc_Clientのインスタンス化で引数にnullをセットしないとエラーに
なってしまうのが、とても気持ち悪いというか、これで正解なのかなあと不安に
なります。
間違いを指摘してくださる方、大歓迎です。
そういえば、
Zend Framework 徹底マスター 藤野 真吾
とてもいい感じです。
> (環境)
> PHP 5.2.6(XAMPP 1.6.8)
> ZendFramework-1.9.7
>
> SSLでZend_XmlRpc_Clientを使いたいのですが、ネット検索してもなかなか参考
> になるサイトが見つかりません。
>
> どなたか、ヒント/ポインタを示していただけませんか。
PHP-users メーリングリストの案内