0

アプリを Drupal に接続しようとしています。「問題が発生しました - -32602 : サーバー エラーです。メソッド パラメータの数が正しくありません。」というエラーが返されます。うまくいくはずだと思います。

ここで何が間違っているのか、誰にも手がかりがありますか?

私のコード:

set_time_limit(0);
require_once("IXR_Library.php");

// Create the client object
$client = new IXR_Client('http://localhost/drupal6/xmlrpc.php');
//$client->debug=true;
 $username = "admin"; 
 $password = "admin"; 
 $params = array(0,$username,$password,10); 


if (!$client->query('metaWeblog.getRecentPosts', $params)) {
    die('Something went wrong - '.$client->getErrorCode().' : '.$client->getErrorMessage());
}

$myresponse = $client->getResponse();
4

1 に答える 1

0

通信している XMLRPC エンドポイントからエラー メッセージ (Specification for Fault Code Interoperability、バージョン 20010516)を受け取っています。

これは定義済みのエラー コードです。

-32602 ---> server error. invalid method parameters

要求した RPC メソッドはサーバーによって検出されましたが、無効なパラメーターが渡されました。使用するサービスのサポートに連絡して、使用可能なすべてのメソッドのリストを取得してください。パラメータが利用可能である必要がある場合は、サポートに連絡して問題について話し合ってください。

あなたの場合、Drupal のマニュアルでmetaWeblog.getRecentPostsXMLRPC メソッドblogapi_xmlrpc Drupal APIについて説明されていることを再確認してください。

array(
  'metaWeblog.getRecentPosts',
  'blogapi_metaweblog_get_recent_posts',
  array('array', 'string', 'string', 'string', 'int'),
  t('Returns a list of the most recent posts in the system.'),
),

このドキュメントが不十分な場合は、Drupal のソース コード内から欠落している部分を探してください。

たとえば、最初のパラメーターは文字列である必要がありますが、0ここでは整数を使用します。

XMLRPC イントロスペクションの使用方法の詳細については、関連する質問/回答: XMLRPC 表示 -32601 エラー (PHP を使用)を参照してください。

drupal が XMLRPC Introspection をサポートしているかどうかはわかりませんが、サポートしているようです。

于 2012-06-01T20:01:09.890 に答える