我正在尝试使用证书在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