web-dev-qa-db-ja.com

WSDLを介したWebサービスのクエリ

Drupal 7.を使用して、特別なユースケースの検索エンジンフロントエンドを作成することを考えています。モジュールディレクトリにはいくつかのモジュールがあり、 Consume SOAP SOのDrupal 7 のWebサービスですが、それでも混乱しています。

外部データセットから動的Drupalノードへのマッピングはどのように行われますか?サービスのWSDLインターフェースを介して取得するすべてのデータセットについて、ノード、ブロック、またはDrupalで表示可能なものを作成する必要があります。

これはDrupalのフレームワークの範囲内でも可能ですか?

1
jstarek

可能であれば、PHPは特にDrupalが構築されているWebベースの言語です。

たとえば、RESTベースの消費サービスクライアントの場合は、 Guzzle drupalコミュニティプロジェクトをご覧ください。 Services Client drupalコミュニティモジュールもあり、リモートWebサービスを利用し、UUIDを使用してフェッチされたデータをマップ/同期します。走行距離はさまざまですが、すべての部分はDrupalおよびPHP内に存在します。たとえば、D7のコア drupal_http_request を使用しても、独自のHTTPリクエストを作成できます。また、デフォルトでdrupals http関数が妨げられている場合は、基礎となるPHPのインストールCuRLライブラリを使用できます。

フィードにSOAPサポートを追加する 問題と関連するサンドボックスプロジェクト drupalコミュニティモジュールもあります。

あなたはSOAPと言いますが、それはネットワークを通過できるものの1つだけです。私はDrupal/PHPからWS- * + SOAPベースのAPIを使用する必要があり、すべてを行うにはCuRLを使用して手動でXMLを作成することになりました。次のようなライブラリもあります。

http://wso2.com/products/web-services-framework/php/

または、php5 ext/SOAPを拡張するこのライブラリ:

https://code.google.com/p/wse-php/

最終的にリモートAPI仕様を理解し、DrupalからリモートAPI仕様と相互運用するのは開発者の責任です。

1
tenken

外部データセットから動的Drupalノードへのマッピングはどのように行われますか?

効果的には、手動で行われます。 PHP5の SOAPクライアント 、またはサードパーティのPHPを使用して、カスタム統合を作成できます。各APIが異なるため、このタスク用の汎用モジュールはありません。

SOでリンクした答えは、基本を示しています。

1
cam8001