首页 > 解决方案 > 从 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);

显示成功,但文件没有发送到网络服务,我的代码有什么错误吗?

标签: phpsoapsoapui

解决方案


推荐阅读