脚本宝典收集整理的这篇文章主要介绍了php – Fedex Web Services:ERROR 9040 – 无法启动跟踪,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我的代码:
<?PHP $path_to_wsdl = "URL_TO_WSDL"; ini_set("SOAp.wsdl_cache_enabled","0"); $client = new SoapClient($path_to_wsdl,array('trace' => 1)); $request['WebAuthenticationDetail'] = array( 'UserCredential' =>array( 'Key' => 'MY_KEY','Password' => 'MY_PASSWORD' ) ); $request['ClientDetail'] = array( 'AccountNumber' => 'MY_ACCT','MeterNumber' => 'MY_METER' ); $request['TransactionDetail'] = array('CustomerTransactionId' => 'ActiveShipping'); $request['Version'] = array( 'Serviceid' => 'trck','Major' => '5','Intermediate' => '0','Minor' => '0' ); $request['PackageIdentifier'] = array( 'Value' => 'TRACKING#','TyPE' => 'TRACKING_NUMBER_OR_DOORTAG'); $response = $client->track($request); var_dump($response); ?>
打电话给Web服务部门,他们告诉我从wsdl文件中删除“beta”.这似乎与我之前在回答此问题时发现的地址不同.在wsdl文件的第1507行,进行以下更改:
从:
<s1:address location="https://wsbeta.fedex.COM:443/web-services/track"/>
至
<s1:address location="https://ws.fedex.com:443/web-services/track"/>
我稍微更改了其余的代码,但这不应该有所不同.为了安全起见,这里是:
<?PHP $path_to_wsdl = "PATH_TO_WSDL_FILE"; $client = new SoapClient($path_to_wsdl,array('trace' => 1)); $trackRequest = array( 'WebAuthenticationDetail' => array( 'UserCredential' => array( 'Key' => 'MY_KEY','Password' => 'MY_PASSWORD' ) ),'ClientDetail' => array( 'AccountNumber' => 'MY_ACCT_#','MeterNumber' => 'MY_METER_#' ),'Version' => array( 'ServiceId' => 'trck','Major' => '5','Minor' => '0' ),'PackageIdentifier' => array( 'Type' => 'TRACKING_NUMBER_OR_DOORTAG','Value' => 'THE_TRACKING_#',),'CustomerTrasactionId','IncludeDetailedScans' => 1 ); $response = $client->track($trackRequest); VAR_dump($response); ?>
以上是脚本宝典为你收集整理的php – Fedex Web Services:ERROR 9040 – 无法启动跟踪全部内容,希望文章能够帮你解决php – Fedex Web Services:ERROR 9040 – 无法启动跟踪所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。