SoapClient - получаю XML с пустыми данными

$client = new \SoapClient("https://staging.textkernel.nl/match/soap/extract?wsdl");
                $param = array(
                    'account' => env('TEXTKERNEL_ACCOUNT'),
                    'username' => env('TEXTKERNEL_USERNAME'),
                    'password' => env('TEXTKERNEL_PASSWORD'),
                    'fileName' => 'cv.docx',
                    'fileContent' => 'SWhvciBCYXJhbml1awpXZWIgRGV2ZWxvcGVyCgorMzgwOTc5Njk5NDQ4CgpUZWFjaGVyIHdpdGggOCsKClBFUlNPTkFMIElORk9STUFUSU9OCiAgQWRkcmVzczogLCAsCiAgTmF0aW9uYWxpdHk6CiAgRHJpdmluZyBMaWNlbnNlOgogIEhvYmJpZXM6IFNraWxscwoKSU5URVJOU0hJUFMKICAqIE9jdG9iZXIgMjAyMCDigJMgT2N0b2JlciAyMDIwCiAgICBUaXRsZSBhdCBZZXMsIEV0dGxpbmdlbgoKICAgIE9rCgo='
                );

        $result = $client->extract($param);
        var_dump($result);die;

SOAP сервер должен парсить CV (Резюме файл), который мы передаем в виде base64 (fileContent).

В данном случае я получаю XML, но данные там пустые. Вот скриншот с POSTMAN: введите сюда описание изображения

Если я делаю тот же запрос,но через cUrl

        $xml = '
            <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ext="http://home.textkernel.nl/sourcebox/soap/extract">
               <soapenv:Header/>
               <soapenv:Body>
                  <ext:extract>
                     <account>' . env('TEXTKERNEL_ACCOUNT') . '</account>
                     <username>' . env('TEXTKERNEL_USERNAME') . '</username>
                     <password>' . env('TEXTKERNEL_PASSWORD') . '</password>
                     <fileName>cv.docx</fileName>         
 <fileContent>SWhvciBCYXJhbml1awpXZWIgRGV2ZWxvcGVyCgorMzgwOTc5Njk5NDQ4CgpUZWFjaGVyIHdpdGggOCsKClBFUlNPTkFMIElORk9STUFUSU9OCiAgQWRkcmVzczogLCAsCiAgTmF0aW9uYWxpdHk6CiAgRHJpdmluZyBMaWNlbnNlOgogIEhvYmJpZXM6IFNraWxscwoKSU5URVJOU0hJUFMKICAqIE9jdG9iZXIgMjAyMCDigJMgT2N0b2JlciAyMDIwCiAgICBUaXRsZSBhdCBZZXMsIEV0dGxpbmdlbgoKICAgIE9rCgo=</fileContent>
                     <options>
                     </options>
                  </ext:extract>
               </soapenv:Body>
            </soapenv:Envelope>
        ';
        $curl = curl_init();
        curl_setopt_array($curl, array(
            CURLOPT_URL => "https://staging.textkernel.nl/match/soap/extract?wsd",
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_ENCODING => "",
            CURLOPT_MAXREDIRS => 10,
            CURLOPT_TIMEOUT => 0,
            CURLOPT_FOLLOWLOCATION => true,
            CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST => "POST",
            CURLOPT_POSTFIELDS =>$xml,
            CURLOPT_HTTPHEADER => array(
                "Content-Type: text/xml"
            ),
        ));

        $response = curl_exec($curl);
        curl_close($curl);
        var_dump($response);die;

введите сюда описание изображения

Через cUrl я уже получаю данные с base64, это FirstName - Jon и LastName - Smith. Правда парсить это уже сложнее, да и хочется все таки получать данные не через cUrl а через SoapClient. Подскажите, что делаю не так, что упустил, как правильно получить эти данные?


Ответы (0 шт):