1

私は PHP を初めて使用します。PHP、JS、および HTML を 1 か月ほど前に 1 日に数時間使い始めました。

私はこれについて多くの宿題をしましたが、実装に関しては頭と尻尾を作ることはできません. 私には、これについて私と一緒に座ることができる筋金入りのプログラマーがいないので、ここに. しかし、この質問に答えられれば、多くの初心者や経験豊富なプログラマーの助けになると確信しています。

問題 - SOAP の概念は理解できますが、単純な SOAP リクエストの作成方法がわかりません。PHPでの手順はどうなりますか。

//php SOAP エクステンションが正しくインストールされました

新しい SOAP クライアントを作成します。

$variable = new SoapClient ;

$inputxml = " the input XML file as a string ";

varibale__doRequest($input xml, "string location -??

XML入力を変数として持っています..どの場所を指定すればよいですか..キャッシュとキャッシュの場所を有効にする必要があります??,...) それが私が使用しようとしているphp関数です-この http://の使用方法www.php.net/manual/en/soapclient.dorequest.php

// 応答を XML として取得するための PHP コード // 応答を文字列として変数に格納する方法

誰かがブログで PHP を使用した単純な SOAP リクエストのデモを行うことができますか?

私は1つの例を見つけることができませんでした.すべてSOAPサービスまたはSOAPサーバーの作成に焦点を当てています..SOAPクライアントを作成し、PHPでリクエストを作成したいだけです-詳細なレイアウトガイド-PHP固有??

これは私が苦労している SOAP サービスです。

http://developer.dnb.com/service-directory/sales/16682663-1.html

誰かが詳細を説明する単一の投稿ブログを書くことができれば、非常に感謝します.

PS: 私の欲求不満が正当化されるかどうかはわかりませんが、SOAP と REST の概念はプログラミングをロケット科学のように聞こえます.. 私は 1 週間以上、1 日 8 時間費やしました。 SOAPの概念。REST に関する限り、それは私を非常に混乱させます。現時点では、ここでそのことに触れたくありません。

4

2 に答える 2

2

PHP SOAP クライアントがありますが、それを使用する必要はありません。リクエストを手動で作成し、curl で投稿することができます。その後、好きなように応答を解析できます。

/**
* Request login body
*/
const REQUEST_LOGIN = '<?xml version="1.0" encoding="utf-8"?>
<env:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://www.company.com/soap" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding">
 <env:Body>
  <ns1:RequestLogin xmlns:ns1="http://www.company.com/soap">
   <ns1:Name>%username%</ns1:Name>
   <ns1:OrgId>0</ns1:OrgId>
   <ns1:AuthType>simple</ns1:AuthType>
  </ns1:RequestLogin>
 </env:Body>
</env:Envelope>
';
于 2012-07-14T13:45:46.030 に答える
0

PHP での SOAP は、見た目よりも少し簡単です。長い形式のチュートリアルを探している場合は、DevZoneにすばらしいチュートリアルがあります。また、 SoapClient クラスのドキュメントも手元に置いておきます。

Soap の操作の要点

// $endpoint is the callback/uri of the WSDL.
// $options is an array of options.
$client = new SoapClient($endpoint, $options);

オプションとエンドポイントの詳細については、コンストラクターの詳細をご覧ください。

PHP にはいくつかの魔法のメソッドがあり、__callはその 1 つです。SOAP を使用する最も簡単な方法は、多くの場合、使用可能なメソッドを呼び出すことです。例えば:

$response = $client->getLoginToken(array(
    'siteid' => 'foo',
    'secid' => 'bar',
));

この場合、getLoginToken は SOAP メソッド呼び出しです。SOAP クライアントは、それがオブジェクトのメソッドではないことを認識し、それをメソッドとして SOAP に渡します。渡される配列は、引数として SOAP エンドポイントに渡す引数です。

また、 soapCall ページの例もチェックアウトします。幸運を祈ります。

于 2012-07-13T13:01:35.150 に答える