我正在研究新项目,对于这个项目,我必须使用SOAP.我是这个SOAP的新手.我重写了我的项目文档.在该文档中,它具有WSDL和XML请求.通过使用boath WSDL和XML请求,我如何发送XML请求.Bellow我正在编写WSDL和XML请求.请帮我.
谢谢.
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>
Run Code Online (Sandbox Code Playgroud)
我建议你阅读一下PHP的SoapClient.PHP手册中有很多很好的例子.
为了帮助您入门,请创建对象:
$client = new SoapClient('http://www.example.com/end_point.wsdl');
Run Code Online (Sandbox Code Playgroud)
然后调用方法:
$result = $client->SomeFunction($data);
Run Code Online (Sandbox Code Playgroud)
SomeFunction您要在服务上调用的方法名称在哪里,$ data是表示要发送的XML数据结构的PHP数组.
希望有所帮助.
[编辑]只是为了澄清OP的进一步问题:
使用PHP SOAPClient时,无需创建实际的XML代码.您需要将数据放入PHP数组中,SOAPClient会将它转换为XML.应为XML元素名称命名数组键,并且数组值是元素值.将嵌套数组用于嵌套XML元素.
| 归档时间: |
|
| 查看次数: |
26535 次 |
| 最近记录: |