簡體   English   中英

在soap header php中傳遞令牌

[英]passing token in soap header php

嘗試調用以下Web服務,這是在soap標頭中傳遞令牌的正確方法,它返回錯誤的令牌響應,但是當我將其與soap ui一起使用時,該令牌正確。

$soapclient = new SoapClient('http://api.fm- 
 web.co.za/webservices/AssetDataWebSvc/DriverProcessesWS.asmx?WSDL');

$token = array('Token'=>'XXXXXX');

$header = new SoapHeader('ass','soapenv',$token,false);

$response = $soapclient->__soapCall('GetDriverList',array(''),NULL,$header);

var_dump($response);

經過一番混亂后這個工作。

 $soapclient = new SoapClient('http://api.fm- 
  web.co.za/webservices/AssetDataWebSvc/DriverProcessesWS.asmx?WSDL');

//$token = array('Token'=>'XXXXXX');

 $header = new 

  SoapHeader('http://www.omnibridge.com/SDKWebServices/AssetData',
 'TokenHeader',array('Token'=>'XXXXXX'),false);

 //$DriverID = 3;
 $params = array('DriverID'=>'3');

 $response = $soapclient- 
 >__soapCall('GetDriver',array($params),NULL,$header);

 var_dump($response);

SoapHeader定義可能很棘手,特別是如果您不熟悉SOAP。

我的建議是使用WSDL to PHP生成器,它將為您提供一個SDK,該方法可以設置任何SoapHeader,尤其是此SoapHeader。

您應該嘗試PackageGenerator項目,該項目應該在您必須創建的ServiceType \\ Get實例中為您提供SoapHeader方法。 看一下生成的tutorial.php文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM