您当前的位置: LBS.云 > 接口说明 > 云检索
云检索

使用说明

云检索已全面支持http/https两种请求形式。后文介绍中以http请求为例。

编码说明:

API请求中需要用到中文或一些特殊字符的参数,为了避免提交到后台乱码,需要对这几个参数值进行编码处理,转换成UTF-8字符的二字符十六进制值,凡是不在下表中的字符都需要进行编码。

字符集合 字符
URL非保留字 a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 - _ . ~
URL保留字 ! * ' ( ) ; : @ & = + $ , / ? % # [ ]

如果中文参数中使用URL保留字字符的字面意思,例如,检索关键字包含一个问号,此问号也必须进行编码。

附注:

(1) javascript中一般采用encodeURIComponent函数对特殊字符进行编码。

(2) Java中可以使用函数URLEncoder.encode对特殊字符进行编码。

(3) C#中可以使用函数HttpUtility.UrlEncode对特殊字符进行编码。

(4) php中可以使用函数urlencode对特殊字符进行编码。

poi周边搜索

周边检索是指以一点为中心(中心点通过location参数指定),搜索中心点附近指定距离范围(搜索半径通过radius参数指定)内的POI点。检索时可通过tags参数指定检索的类型;通过sortby参数进行检索结果的排序(支持多字段排序);filter参数可以完成对指定数据范围的筛选。

例:搜索以“116.395884,39. 932154”为中心,1000米范围内价格在200到300的饭店,并将搜索结果按照距离和价格的升序排序。

http://api.map.baidu.com/geosearch/v3/nearby?ak=您的ak&geotable_id=****&location=116.395884,39.932154&radius=1000&tags=酒店&sortby=distance:1|price:1&filter=price:200,300

请求url

http://api.map.baidu.com/geosearch/v3/nearby // GET请求

请求参数

参数名 参数含义 类型 格式 备注
ak access_key string(50) 字符串 必须
geotable_id geotable主键 uint32 数字 必须
q 检索关键字 string(45) 任意汉字或数字,英文字母,可以为空字符 可选
location 检索的中心点 string(25) 逗号分隔的经纬度 必须

样例:116.4321,38.76623

coord_type 坐标系 uint32 数字 可选

3代表百度经纬度坐标系统 4代表百度墨卡托系统

radius 检索半径 uint32 单位为米,默认为1000 可选

样例:500

tags 标签 string(45) 空格分隔的多字符串 可选

样例:美食 小吃

sortby 排序字段 string ”分隔的多个检索条件。

格式为sortby={key1}:value1|{key2:val2|key3:val3}。 最多支持16个字段排序 {keyname}:1 升序 {keyname}:-1 降序 以下keyname为系统预定义的: distance 距离排序 weight 权重排序

可选

默认为按weight排序 如果需要自定义排序则指定排序字段 样例:按照价格由便宜到贵排序 sortby=price:1

filter 过滤条件 string(50) 竖线分隔的多个key-value对

key为筛选字段的名称(存储服务中定义) 支持连续区间或者离散区间的筛选: a:连续区间 key:value1,value2 b:离散区间 key:[value1,value2,value3,...]

可选

样例: a:连续区间 样例:筛选价格为9.99到19.99并且生产时间为2013年的项 price:9.99,19.99|time:2012,2012 b:离散区间 筛选价格为8,9,13,并且生产时间为2013年的项 price:[8,9,13]|time:2012,2012 注:符号为英文半角中括号

page_index 分页索引 uint32 当前页标,从0开始 可选

默认为0

page_size 分页数量 uint32 当前页面最大结果数 可选

默认为10,最多为50

callback 回调函数 string(20) js回调函数 可选
sn 用户的权限签名 string(50) 可选

响应参数(json格式)

参数名 参数含义 类型 备注
status 状态码 int32 0表示成功,其他值详见状态码说明
size 分页参数,当前页返回数量 int32
total 分页参数,所有召回数量 int32
contents uid 数据id string
geotable_id geotable_id string
title poi名称 string
address poi地址 string
province poi所属省 string(20)
city poi所属城市 string(20)
district poi所属区 string(20)
coord_type 坐标系定义 int32 可选

3代表百度经纬度坐标系统 4代表百度墨卡托系统

location 经纬度 array
tags poi的标签 string
distance 距离,单位为米 int32
weight 权重 int32
{column} 自定义列 自定义类型 自定义列/値,云存储未添加値时不返回

请求响应示例

geosearch-1.jpg

poi本地检索

本地检索是指可检索指定区域范围内的poi信息,区域通过region参数来设定,可以是全国范围也可以是小范围的如海淀区。检索时可通过tags参数指定检索类型;通过sortby参数对检索结果进行排序(支持多字段排序);filter参数可以完成对指定数据范围的筛选。

例:搜索北京范围内的价格在200到300之间的酒店并将搜索结果按照距离和价格降序排序。

http://api.map.baidu.com/geosearch/v3/local?region=北京&ak=您的ak&geotable_id=****&tags=酒店&sortby=distance:1|price:1 &filter=price:200,300

请求url

http://api.map.baidu.com/geosearch/v3/local // GET请求


请求参数

参数名 参数含义 类型 格式 备注
ak access_key string(50) 字符串 必须
geotable_id geotable主键 uint32 数字 必须
q 检索关键字 string(45) 任意汉字或数字,英文字母,可以为空字符 必须
coord_type 坐标系 uint32 数字 可选

3代表百度经纬度坐标系统 4代表百度墨卡托系统

region 检索区域名称 String(25) 市或区的名字,如北京市,海淀区。 可选,此接口推荐填写该参数

否则,默认按照全国范围来检索

tags 标签 string(45) 空格分隔的多字符串 可选

样例:美食 小吃

sortby 排序字段 string ”分隔的多个检索条件。

格式为sortby={key1}:value1|{key2:val2|key3:val3}。 最多支持16个字段排序 {keyname}:1 升序 {keyname}:-1 降序 以下keyname为系统预定义的: distance 距离排序 weight 权重排序

可选 默认为按weight排序 如果需要自定义排序则指定排序字段 样例:按照价格由便宜到贵排序 sortby=price:1

filter 过滤条件 string(50) 竖线分隔的多个key-value对

key为筛选字段的名称(存储服务中定义) 支持连续区间或者离散区间的筛选: a:连续区间 key:value1,value2 b:离散区间 key:[value1,value2,value3,...]

可选

样例: a:连续区间 样例:筛选价格为9.99到19.99并且生产时间为2013年的项 price:9.99,19.99|time:2012,2012 b:离散区间 筛选价格为8,9,13,并且生产时间为2013年的项 price:[8,9,13]|time:2012,2012 注:符号为英文半角中括号

page_index 分页索引 uint32 当前页标,从0开始 可选

默认为0

page_size 分页数量 uint32 当前页面最大结果数 可选

默认为10,最多为50

callback 回调函数 string(20) js回调函数 可选
sn 用户的权限签名 string(50) 可选


响应参数(json格式)

参数名 参数含义 类型 备注
status 状态码 int32 0表示成功,其他值详见状态码说明
size 分页参数,当前页返回数量 int32
total 分页参数,所有召回数量 int32
contents uid 数据id string
geotable_id geotable_id string
title poi名称 string
address poi地址 string
province poi所属省 string(20)
city poi所属城市 string(20)
district poi所属区 string(20)
location 经纬度 array
coord_type 坐标系定义 int32 可选

3代表百度经纬度坐标系统 4代表百度墨卡托系统

tags poi的标签 string 多个tag用空格分隔
distance 距离,单位为米 int32
weight 权重 int32
{column} 自定义列 自定义类型 自定义列/値,云存储未添加値时不返回


请求响应示例

geosearch-2.jpg

poi矩形检索

矩形检索是指可检索指定矩形范围内的poi信息,检索区域通过bounds参数设定的矩形的左下角和右上角的经纬度坐标来确定。检索时可通过tags参数指定检索类型;检索结果可通过sortby参数进行排序(支持多字段排序);可通过filter参数筛选出指定的数据范围的结果。

例:搜索以“116.30,36.20”为左下角以“117.30,37.20”为右上角的矩形范围内的价格在200到300之间的酒店并将搜索结果按照距离和价格降序排序。

http://api.map.baidu.com/geosearch/v3/bound?ak=您的ak&geotable_id=****bounds=116.30,36.20;117.30,37.20 &sortby=price:1&tags=酒店&filer=price:200,300

请求url

http://api.map.baidu.com/geosearch/v3/bound // GET请求


请求参数

参数名 参数含义 类型 格式 备注
ak access_key string(50) 字符串 必须
geotable_id geotable主键 uint32 数字 必须
q 检索关键字 string(45) 任意汉字或数字,英文字母,可以为空字符 必须
bounds 矩形区域 String(25) 左下角和右上角的经纬度坐标点。2个点用;号分隔 必须

样例:116.30,36.20;117.30,37.20

tags 标签 string(45) 空格分隔的多字符串 可选

样例:美食 小吃

coord_type 坐标系 unit32 数字 可选

3代表百度经纬度坐标系统 4代表百度墨卡托系统

sortby 排序字段 string ”分隔的多个检索条件。
格式为:sortby={key1}:value1|{key2:val2|key3:val3}。
最多支持16个字段排序
{keyname}:1 升序
{keyname}:-1 降序
系统预定义的keyname:weight 权重排序
可选
默认为按weight排序
如果需要自定义排序则指定排序字段
样例:按照价格由便宜到贵排序
sortby=price:1
filter 过滤条件 string(50) 竖线分隔的多个key-value对key为筛选字段的名称(存储服务中定义)
支持连续区间或者离散区间的筛选:
a:连续区间 key:value1,value2
b:离散区间 key:[value1,value2,value3,...]
可选

样例: a:连续区间 样例:筛选价格为9.99到19.99并且生产时间为2013年的项 price:9.99,19.99|time:2012,2012 b:离散区间 筛选价格为8,9,13,并且生产时间为2013年的项 price:[8,9,13]|time:2012,2012 注:符号为英文半角中括号

page_index 分页索引 uint32 当前页标,从0开始 可选

默认为0

page_size 分页数量 uint32 当前页面最大结果数 可选

默认为10,最多为50

callback 回调函数 string(20) js回调函数 可选
sn 用户的权限签名 string(50) 可选


响应参数(json格式)

参数名 参数含义 类型 备注
status 状态码 int32 0表示成功,其他值详见状态码说明
size 分页参数,当前页返回数量 int32
total 分页参数,所有召回数量 int32
contents uid 数据id string
geotable_id geotable_id string
title poi名称 string
address poi地址 string
province poi所属省 string(20)
city poi所属城市 string(20)
district poi所属区 string(20)
location 经纬度 array
coord_type 坐标系定义 int32 3代表百度经纬度坐标系统,4代表百度墨卡托系统
tags poi的标签 string
distance 距离,单位为米 int32
weight 权重 int32
{column} 自定义列 自定义类型 自定义列/値,云存储未添加値时不返回


请求响应示例

geosearch-3.jpg

poi详情检索

请求url

http://api.map.baidu.com/geosearch/v3/detail/{uid} // GET请求

注意:uid为poi点的id值


请求参数

参数名 参数含义 类型 备注
ak access_key string(50) 必须
geotable_id geotable表主键 int32 必选
coord_type 坐标系 uint32 可选

3代表百度经纬度坐标系统 4代表百度墨卡托系统

sn 用户的权限签名 string(50) 可选


响应参数(json格式)

参数名 参数含义 类型 备注
status 状态码 int32 0代表成功,其它取值含义另行说明
size 分页参数,当前页返回数量 int32
total 分页参数,所有召回数量 int32
contents uid 数据id string
geotable_id geotable_id string
title Poi地址 string
address poi名称 string
province poi所属省 string
city poi所属城市 string(20)
district poi所属区 string(20)
location 经纬度 array
coord_type 坐标系定义 int32 3代表百度经纬度坐标系统,4代表百度墨卡托系统
tags poi的标签 string
distance 距离,单位为米 int32
weight 权重 int32
{column} 自定义列 自定义类型 自定义列/値,云存储未添加値时不返回


请求响应示例

geosearch-4.jpg

状态码说明

请参见附录