2010-02-17 90 views
5

我試圖修改soapenv:頭,包括在我的SOAP請求如何使用Perl的SOAP :: Lite編輯SOAP信封和標題?

my $header=SOAP::Header->name("Header")->prefix("soap")->uri("http://www.w3.org/2005/08/addressing"); 

解決當我發送請求:

print $soap->call($header, $security->value(\$userToken, $action, $message))->result; 

我收到以下...

<"soap:Header soap:Header xmlns:soap="http://www.w3.org/2005/08/addressing" /> 

我需要嘗試和覆蓋原來的<soap:Header>我需要做相同的<soap:Envelope>

如果有人可以幫忙,將不勝感激:-)

+0

縮進文本以將其標記爲代碼。 http://stackoverflow.com/editing-help – daxim

+0

@Shayne:我給你的文章添加了代碼標記,但是你的示例SOAP現在可能是錯誤的。請編輯它以符合現實。 – Ether

回答

0

SOAP :: Lite中有一個類叫做SOAP::Lite::Packager。看看「Heades_http」方法。我認爲那就是你想要的。

+1

嗨, 感謝您的時間,SOAP :: Lite :: Packager看起來只用於HTTP標頭,只設置內容MIME類型等,這是修改SOAP標頭的HTTP標頭,SOAP標頭只是簡單的XML轉移。 但謝謝你的時間:-) – Shayne

1

「call」的第一個參數是方法名稱,而不是頭部。