我正在开发一个新项目,对于这个项目我必须使用 SOAP。我对这个 SOAP 很陌生。
我红色了我的项目文档。在该文档中它有 WSDL 和 XML 请求。通过使用 Boath WSDL 和 XML 请求,我如何发送 XML 请求。下面我正在编写 WSDL 和 XML 请求。请帮我。
谢谢。
WSDL:
http://acceptance.travelstreet.com/hotelsv3/components/hotels_ws.cfc?wsdl http://acceptance.travelstreet.com/hotelsv3/components/hotels_ws.cfc?wsdl
XML 请求:
<?xml version="1.0" encoding="utf-8"?>
<OTA_HotelAvailRQ Version="1.0">
<POS>
<Source>
<UniqueId Id="username:password" />
</Source>
</POS>
<AvailRequestSegments>
<AvailRequestSegment>
<StayDateRange End="2011-08-15" Start="2011-08-14" />
<RoomStayCandidates>
<RoomStayCandidate Quantity="1">
<GuestCounts>
<GuestCount AgeQualifyingCode="10" Count="1" />
</GuestCounts>
</RoomStayCandidate>
</RoomStayCandidates>
<HotelSearchCriteria>
<Criterion>
<HotelRef Destination="East London, South Africa" CityCode="" CountryCode="" HotelName="" MinHotelRating="1"/>
<SearchCurrency>EUR</SearchCurrency>
<AdditionalInfo Value="1" />
<Language>EN</Language>
</Criterion>
</HotelSearchCriteria>
</AvailRequestSegment>
</AvailRequestSegments>
</OTA_HotelAvailRQ>
我建议你阅读有关PHP SoapClient http://www.php.net/manual/en/soapclient.soapclient.php。 PHP 手册中有很多很好的例子。
首先,创建对象:
$client = new SoapClient('http://www.example.com/end_point.wsdl');
然后调用该方法:
$result = $client->SomeFunction($data);
where SomeFunction
是您要在服务上调用的方法名称,$data 是一个 PHP 数组,表示您要发送的 XML 数据结构。
希望有帮助。
[编辑]
只是为了根据OP的进一步问题进行澄清:
使用 PHP SOAPClient 时不需要创建实际的 XML 代码。您需要将数据放入 PHP 数组中,SOAPClient 将为您将其转换为 XML。数组键应根据 XML 元素名称命名,数组值是元素值。对嵌套 XML 元素使用嵌套数组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)