Bagroff
Новичок
soap-сервер(php) vs soap-клиент(asp dot net)
Если придумать что-нибудь вида...
То на входе и выходе простые типы данных. И сделать связку как в сабже, затруднений не вызывает. Все работает.
Но если нужно, что более реально, работать с сложными типами данных, к примеру, возвращать массив, то wsdl, не будет уже таким банальным.
Как-нибудь так...
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://localhost/vartypes/"
<s:element name="get_datetimeResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="get_datetimeResult" nillable="true" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</wsdl:types>
Подцепившись к данному soap-серверу с asp.net мы видим, что данный метод возвращает тип данных get_datetimeResponse, что, вроде бы, логично, но не вкусно... как это победить и получать чистый array?!
если к этому soap-серверу придумать небольшой soap-клиент на php, то php-шный соап клиент получает ответ, как раз, таки с типом array...
Если придумать что-нибудь вида...
PHP:
function getTime($format = 'Y-m-d') {
return date($format);
}
Но если нужно, что более реально, работать с сложными типами данных, к примеру, возвращать массив, то wsdl, не будет уже таким банальным.
Как-нибудь так...
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://localhost/vartypes/"
<s:element name="get_datetimeResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="get_datetimeResult" nillable="true" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</wsdl:types>
Подцепившись к данному soap-серверу с asp.net мы видим, что данный метод возвращает тип данных get_datetimeResponse, что, вроде бы, логично, но не вкусно... как это победить и получать чистый array?!
если к этому soap-серверу придумать небольшой soap-клиент на php, то php-шный соап клиент получает ответ, как раз, таки с типом array...