Как просмотреть вывод «raw xml» из nusoap? - PullRequest
6 голосов
/ 31 августа 2010

У меня есть общая функция, которую я использую для передачи команд SOAP. Мне нужно просмотреть данные RAW XML, которые отправляются на сервер для диагностики ошибки. Как мне это сделать?

Ответы [ 2 ]

16 голосов
/ 31 августа 2010

Неважно, похоже, это очень близко к точке!

http://www.scottnichol.com/nusoapintro.htm

<code>echo '<h2>Request</h2>';
echo '<pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '
'; echo '

Response

'; echo '
' . htmlspecialchars($client->response, ENT_QUOTES) . '
'; // Показать сообщения отладки echo '

Debug

'; echo '
' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '
';
1 голос
/ 16 июня 2016

Хотя это старый пост, я хотел добавить свою версию ответа tzmatt.

<code>class soapBug {

    /*
     * @var obj $debug client object
     * @var string $what Just a name for the header so you know
     * what you are looking at.
     */
    public function bug($debug, $what) {
        /* ive stayed with the original here, but you could look at
         * http://www.php.net/manual/en/tidy.repairstring.php to
         * output in clean xml.
         *
         * I just grab the line i need and paste
         * it into my IDE and let it format for me, works just as well
         * and no coding to fiddle with for something that wont be
         * permanent on my project.
         */
        echo '<h2>' . $what . '</h2>';
        echo '<pre>' . htmlspecialchars($debug, ENT_QUOTES) . '
'; } } class someClass { частный $ де; // приватно для этого класса, чтобы предотвратить случайный вызов // вне класса. публичная функция __construct () { $ this-> de = new soapBug; } публичная функция thatNeedsDebugging () { / * * Достаточно просто для отладки вашего клиента, теперь не нужно копировать * Блок HTML всего можно отладить всего одной строкой * звоните им всем * / $ this-> de-> bug ($ client-> request, 'Request'); // Я беру эту строку вывода $ this-> de-> bug ($ client-> response, 'Response'); $ this-> de-> bug ($ client-> debug_str, 'Debug'); } }
...