簡體   English   中英

通過Soap WSDL發送數組的問題-PHP

[英]Problem with sending array via Soap WSDL - PHP

我在發送SOAP查詢時遇到問題。 由於某種原因,我的代碼[numerNadania]不好。 我想這是結構上的問題。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:e=http://e-nadawca.poczta-polska.pl 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Header/>
    <soapenv:Body>
        <e:addReklamacje>
            <reklamowanaPrzesylka 
            dataNadania="2018-05-22" 
            urzadNadania="260578" 
            powodReklamacjiOpis="TEST TEST TEST" 
odszkodowanie="0" oplata="0" oczekiwaneOdszkodowanie="0">
                <przesylka 
                    guid="262A34BA2C1111116237B659B312F5EB" 
                    numerNadania="00159007738099827991"
                    opis="TEST" 
                    planowanaDataNadania="2018-05-22"
                    xsi:type="e:przesylkaBiznesowaType"/>
            <powodReklamacji 
idPowodGlowny="4" 
powodGlownyOpis="TEST TEST TEST">
                    <powodSzczegolowy 
idPowodSzczegolowy="9" powodSzczegolowyOpis="TEST TEST TEST"/>
            </powodReklamacji>
            </reklamowanaPrzesylka>
        </e:addReklamacje>
    </soapenv:Body>
</soapev:Envelope>
    $options["login"] = "***";
    $options["password"] = "***";
    $options["soap_version"] = SOAP_1_2;

    $wsdl = 'en.wsdl';

    try {
        $client = new SoapClient($wsdl,$options);
    }

    catch(Throwable $e) {
        echo 'Wystąpił problem z połączniem API';
    }

    $params = array(
        'reklamowanaPrzesylka' => array (
            'przesylka' => array (
                'guid' => getGuid(),
                'numerNadania' => $id,
            ),
            'powodReklamacji' => "Czas dostawy",
        )
    );

    $problem = $client->addReklamacje($params);
stdClass Object ( [errorNumber] => 13250 [errorDesc] => Numer nadania dla składanych reklamacji jest wymagany [guid] => F8CF816CDF4DD8151116C0EE340C4031 )

Numer nadania dlaskładanychreklamacji jest wymagany-需要發送號碼[翻譯]

過去,我一直使用wsdl2php轉換器來創建解決大多數此類問題的客戶端代碼。

例如,請參閱此示例: https : //github.com/rquadling/wsdl2php

它們的工作原理幾乎相同,您需要提供?wsdl端點,運行腳本,它將生成客戶端代碼並將其輸出到文件中。 比您可以包含文件並使用生成的類和方法。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM