使用Laravel SoapWrapper进行SOAP调用时遇到的问题
我正在开发一个项目,需要从政府那里调用SOAP服务器。我决定使用Laravel(它适合整个项目的需要),我发现Laravel的SOAP包装看起来不错() 在SOAP服务器手册中,我有以下示例: 但我通过电子邮件收到了一些指示,说明实际上有两种身份验证: 1。将SOAP“属性”配置为: 用户名:例如 密码:示例 WSS密码类型:PasswordText 2。在请求内部,按如下方式通知身份验证数据(与手册中相同): 用户名:usuariorgao.redesim 密码:示例 问题是我不知道如何构造满足这些身份验证要求的调用。我已经尝试过几种方法,比如:使用Laravel SoapWrapper进行SOAP调用时遇到的问题,laravel,authentication,soap,soap-client,Laravel,Authentication,Soap,Soap Client,我正在开发一个项目,需要从政府那里调用SOAP服务器。我决定使用Laravel(它适合整个项目的需要),我发现Laravel的SOAP包装看起来不错() 在SOAP服务器手册中,我有以下示例: 但我通过电子邮件收到了一些指示,说明实际上有两种身份验证: 1。将SOAP“属性”配置为: 用户名:例如 密码:示例 WSS密码类型:PasswordText 2。在请求内部,按如下方式通知身份验证数据(与手册中相同): 用户名:usuariorgao.redesim 密码:示例 问题是我不知道如何构造
public function\uuu构造(SoapWrapper$SoapWrapper)
{
//
$this->soapWrapper=$soapWrapper;
$this->soapWrapper->add('Viabilidade',function($service){
$service
->wsdl(配置('app.jucesp_viabilidade_soap_url'))
->跟踪(真);
});
}
/**
*使用肥皂包装器
*/
公共函数列表ARPROTOCOLOSVIVAILIDADE()
{
$response=$this->soapWrapper->call('Viabilidade.listarprotocolovabilidade'[
'dto'=>[
“AuthenticationHeader”=>[
'Username'=>'example.redesim',
'密码'=>'示例'
]
]
]);
var_dump($response);
出口
}
但无论我做什么,它都会返回:
SoapFault
An error occurred when verifying security for the message.
at vendor/artisaninweb/laravel-soap/src/Artisaninweb/SoapWrapper/Client.php:189
185▕ array $options = null,
186▕ $inputHeader = null,
187▕ &$outputHeaders = null
188▕ ) {
➜ 189▕ return $this->__soapCall($function, $params, $options, $inputHeader, $outputHeaders);
190▕ }
191▕ }
192▕
+4 vendor frames
5 app/Http/Controllers/Soap/ViabilidadeController.php:45
Artisaninweb\SoapWrapper\SoapWrapper::call()
6 app/Console/Commands/ListarProtocolosViabilidade.php:49
App\Http\Controllers\Soap\ViabilidadeController::listarProtocolosViabilidade()
有人知道怎么做吗?另外,如果你有任何其他包装的建议(因为我正在使用的那个似乎过时了),请告诉我