在Laravel中使用证书进行Soap API调用

时间:2019-02-21 09:03:00

标签: php laravel soap

我正在尝试使用证书在laravel https://ws.xledger.net/WS/Common/Lib/Export.asmx中调用soap api。我从服务器收到“无效的用户访问权限”响应。

我正在从基于Windows(.exe)的应用程序中获取数据,我必须在其中安装证书并保存在MMC中。我从Windows导出了证书,并使用openssl将其转换为.pem格式。

他们有打电话给证书的想法吗?

这是我的代码:

 $export = 'https://ws.xledger.net/WS/Common/Lib/Export.asmx?wsdl';

   $exports = new SoapClient($export);

  $path = file_get_contents(public_path().'/xledger.pem');

     $header = new SoapHeader('https://ws.xledger.net',
        'Certificate',
        $path);

      $exports->__setSoapHeaders($header);

    $entities = $exports->GetGeneralLedgerData(['sUserName'=>$userName,'sKey'=>$key,'sApplication' => $application, 'iEntityCode'=> $entitycode, 'eOption'=> 'Open']);

    $GetEntitiesDataResult =  $entities->GetEntitiesDataResult;
     echo $GetEntitiesDataResult 

0 个答案:

没有答案