PHP SOAP сервер отправляет обратно частичный ответ - PullRequest
0 голосов
/ 25 июня 2010

Я написал службу SOAP, чтобы мое приложение Silverlight могло добавлять записи в мою базу данных. Сервер написан на PHP, и чтобы проверить все, я написал PHP-клиент.

Кажется, мой клиент правильно отправляет запрос. Это то, что генерируется, когда я вызываю _getLastRequest ():

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope 
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ns1="urn:blogPosts" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"        
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" 
    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

    <SOAP-ENV:Body>
        <ns1:saveBlogPost>
            <userId xsi:type="xsd:int">1</userId>
            <catId xsi:type="xsd:int">1</catId>
            <subCatId xsi:type="xsd:int">1</subCatId>
            <title xsi:type="xsd:string">Web Service Test</title>
            <blogPost xsi:type="xsd:string">Testing</blogPost>
        </ns1:saveBlogPost>
    </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

Однако, когда сервер отвечает, появляется только частичное сообщение:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope 
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ns1="urn:blogPosts" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" 
    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

    <SOAP-ENV:Body>
        <ns1:saveBlogPostRe

Я получаю сообщение об ошибке «похоже, что у нас нет XML-документа».

Любая помощь, которую вы можете оказать, будет принята с благодарностью.

1 Ответ

0 голосов
/ 14 апреля 2011

Мое решение: забудьте SOAP и используйте REST:)

...