php - 从 SOAP UI 和 PHP 测试 SOAP Web 服务
问题描述
我一直在使用 SOAP UI 测试 Web 服务。这是我放入 SOAP UI 的内容:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:b2b="http://www.dominio.com.emision.request">
<soapenv:Header/>
<soapenv:Body>
<b2b:EmitirDocumentoRequest>
<documento>Q0FCfDkwMTE4NzYxNXw5MDA0MDkyMjR8Rn</documento>
<tipoDocumento>F</tipoDocumento>
<empresa>FAC</empresa>
<cuenta>FAC00111</cuenta>
<usuario>USR_WS_FAC00111</usuario>
<!--Optional:-->
<serie>SETT</serie>
<folio>5223</folio>
<monto>1078232.00</monto>
<fecha>2019-11-04</fecha>
<hora>07:40:08</hora>
</b2b:EmitirDocumentoRequest>
</soapenv:Body>
</soapenv:Envelope>
从 SOAP UI 可以正常工作,并且可以在这些 Web 服务中正确接收数据。
现在,当我将其写入 PHP 时:
<?php
$factura = base64_encode(file_get_contents('FA002.txt'));
$client = new SoapClient("http://xxx.xxx.xxx.xxx:xxx/wsdl?configName=EmitirDocumento");
$datos = array(
'documento' => $factura,
'tipoDocumento' => 'F',
'empresa' => 'FAC',
'cuenta' => 'FAC00111',
'usuario' => 'USR_WS_FAC00111',
'serie' => 'SETT',
'folio' => '5224',
'monto' => 1078232.00,
'fecha' => '2019-11-04',
'hora' => '07:40:08'
);
$rs = $client->__soapCall('execute_EmitirDocumento', array($datos));
var_dump($rs);
显示成功,但文件没有发送到网络服务,我的代码有什么错误吗?
解决方案
推荐阅读
- vue.js - linting 时我应该使用“plugin:vue/essential”和“plugin:vue/vue3-recommended”吗?
- r - 想要根据匹配的时间戳将一个数据帧中的某些行替换为另一个数据帧中的行(两个数据帧的时间戳都在相同的 tz 中)
- reactjs - onChange 没有为自定义子组件触发
- android - 如何在android中本地化地理编码器上的响应
- javascript - 如何在事件监听器上获取第一个 div 元素
- python - 使用图像散列比较文本填充的图像
- python - 生成用于连接到 Google Calendar API 的个人使用应用程序的持久令牌
- python - 如何禁用失败的 Metaflow 任务的自动重试?
- dependency-injection - Dagger:是否可以自动将子组件 getter 公开给兄弟子组件的范围?
- firebase - 从 Flutter Firebase 数据库中检索数据