Zend Framework に SOAP サーバーがあり、リクエストが soap_server に到達する前にフィルターを追加して、ヘッダーを解析し、wsse を許可しました。これはうまくいきます。
昨日、ヘッダーの Security 要素に属性 MustUnderstand=1 を持つ呼び出しを受け取りました。その後、soap_server は次のメッセージをスローします。
zend_soap_server にヘッダーの mustunderstand=1 を無視させる回避策はありますか?
Zend Framework に SOAP サーバーがあり、リクエストが soap_server に到達する前にフィルターを追加して、ヘッダーを解析し、wsse を許可しました。これはうまくいきます。
昨日、ヘッダーの Security 要素に属性 MustUnderstand=1 を持つ呼び出しを受け取りました。その後、soap_server は次のメッセージをスローします。
zend_soap_server にヘッダーの mustunderstand=1 を無視させる回避策はありますか?
Attribute として呼び出される関数を実装するだけで、必要でない場合はその中で何もしません。
本文を処理せずにメッセージを返す可能性があるため、その中に「return」ステートメントを使用しないでください
例
<SOAP-ENV:Header>
<wsa5:To SOAP-ENV:mustUnderstand="true">http://www.xxx.yyy.zzz/</wsa5:To>
<wsa5:Action SOAP-ENV:mustUnderstand="true">someData</wsa5:Action>
</SOAP-ENV:Header>
次のようなクラスを実装する必要があります。
Class MySoapServer{
private $bar;
private $foo;
public function To( $data )
{
$this->bar = $data;
}
public function Action( $data )
{
//do Nothing!
}
public function Method1( $message )
{
//....
return $returnedValues;
}
}