预订宝/getLandmarks
来自站长百科
getLandmarks概述[ ]
- 接口地址:http://api.yudingbao.net/v1.0/hotel/geospatials.ashx?act=getLandmarks
- 动作标识:getLandmarks
- 参数:见参数说明
- 请求方式:GET
- 响应模式:JSON、JSONP、XML
注意:动作标识是大小写敏感的,请养成良好的编码习惯!
本接口涵盖了本站收集的亿万级别的地标数据。
本接口仅支持简单的查询条件,不支持翻页、排序等功能,提供本接口的目的是为了帮助本站非一站式代理实现地标搜酒店的功能。在查询酒店时,需要提交地标名称、经度、纬度以及查询半径4个参数才能实现地图搜索。本接口给出了相关的必要数据。
本接口的应用应当以地标表单自动完成为主!
参数说明[ ]
参数名称 | 参数类型 | 说明 |
---|---|---|
cityName | string | 必填。城市名称。 |
keyword | string | 必填。关键字,地标名的完整或部分名称,至少需要输入2个字符。如:天安门、中关。 |
itemCount | int | 每次查询返回地标的数量。默认为10。最大为20。 |
数据格式[ ]
- 响应头:
- Status:0为正常,非0表示处理请求时发生异常,通常是参数校验错误;
- Messages:当Status为非0时该字段肯定包含一条或多条消息文本;
- 响应体:
- CityName:城市名称;
- Keyword:关键字
- Landmarks:地标列表
item
- Name:地标名
- Lng:经度
- Lat:纬度
对于数据格式的理解,请参考下列示例代码中的XML响应演示,其中每个字段都标注了数据类型(日期类型在XML响应中统一使用GMT格式,但被标注为string,请开发者注意)。
示例代码[ ]
以下示例代码是通过HTML表单实现了该接口的部分操作,您在开发过程中应当使用自己的平台语言来模拟这些操作以捕获响应体,然后对响应体做出相应的操作。
请求示例:
<!-- 这是该接口的请求示例,该接口的访问类同于如下表单的提交, 请注意:该表单使用控件的方法模拟了GET请求 --> <form id="myForm" method="get" action="http://api.yudingbao.net/v1.0/hotel/geospatials.ashx"> <p> <!--动作标识,注意动作标识是大小写敏感的--> <input id="act" name="act" value="getLandmarks" type="text" /> </p> <p> <input id="cityName" name="cityName" value="北京" type="text"> <input id="keyword" name="keyword" value="钓鱼台" type="text"> <input id="itemCount" name="itemCount" value="3" type="text"> </p> <p> <!--指定响应格式为XML,这里以XML为例--> <input id="format" name="format" value="xml" type="text" /> <!--指定响应体应当是已格式化的,便于阅读代码,在生产环境中应当将该值设置为false--> <input id="indent" name="indent" value="true" type="text" /> <!--产品编号。在我的账户-分销产品的应用列表中可以找到该参数的值。--> <input id="aid" name="aid" value="78663" type="text" /> <!--接口密钥。在我的账户-分销产品的应用列表中可以找到该参数的值。--> <input id="key" name="key" value="0925ed633d24577eb3ffe13f00c55a4f9739f51a77eefb1dba29bb9568acddfd" type="text" /> <!--应用程序授权编号及公钥,这是可选的--> <input id="sid" name="sid" value="" type="text"> <input id="sKey" name="sKey" value="" type="text"> </p> <p> <input id="submit" name="submit" value="提交" type="submit"> </p> </form>
XML响应:
<!--XML响应--> <?xml version="1.0" encoding="utf-8"?> <HttpResponse> <Status type="number">0</Status> <Messages type="array"> </Messages> <ResponseBody type="object"> <CityName type="string">北京</CityName> <Keyword type="string">钓鱼台</Keyword> <Landmarks type="array"> <item type="object"> <Name type="string">北京钓鱼台国际旅行社</Name> <Lng type="number">116.4502408</Lng> <Lat type="number">39.9078289</Lat> </item> <item type="object"> <Name type="string">北京钓鱼台国际旅行社(东直门门市部)</Name> <Lng type="number">116.4138708</Lng> <Lat type="number">39.9405508</Lat> </item> <item type="object"> <Name type="string">钓鱼台</Name> <Lng type="number">116.334655</Lng> <Lat type="number">39.919021</Lat> </item> </Landmarks> </ResponseBody> </HttpResponse>
JSON响应:
// Json响应 { "Status" : 0, "Messages" : [], "ResponseBody" : { "CityName" : "北京", "Keyword" : "钓鱼台", "Landmarks" : [{ "Name" : "北京钓鱼台国际旅行社", "Lng" : 116.4502408, "Lat" : 39.9078289 }, { "Name" : "北京钓鱼台国际旅行社(东直门门市部)", "Lng" : 116.4138708, "Lat" : 39.9405508 }, { "Name" : "钓鱼台", "Lng" : 116.334655, "Lat" : 39.919021 }] } }
JSONP响应:
// JsonP响应 jsoncallback({ "Status" : 0, "Messages" : [], "ResponseBody" : { "CityName" : "北京", "Keyword" : "钓鱼台", "Landmarks" : [{ "Name" : "北京钓鱼台国际旅行社", "Lng" : 116.4502408, "Lat" : 39.9078289 }, { "Name" : "北京钓鱼台国际旅行社(东直门门市部)", "Lng" : 116.4138708, "Lat" : 39.9405508 }, { "Name" : "钓鱼台", "Lng" : 116.334655, "Lat" : 39.919021 }] } });