Location
Zhangchao2 (讨论 | 贡献) (创建新页面为 '即将推出') |
Zhangchao2 (讨论 | 贡献) 小 |
||
第1行: | 第1行: | ||
− | + | ==POI搜索API开发指南== | |
+ | POI搜索API是一套由JavaScript语言编写的应用程序接口,他提供了诸如本地搜索、周边搜索、视野内搜索等数据服务。 | ||
+ | === 接口URL=== | ||
+ | http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872 | ||
+ | |||
+ | 注:appkey为接口访问授权码,需要注册获取。 | ||
+ | ===开发者访问权限设置=== | ||
+ | POI搜索API的服务是免费的,但是需要申请appkey来验证开发者身份。 | ||
+ | |||
+ | '''如何申请appkey''' | ||
+ | |||
+ | * 首先登录http://open.t.sina.com.cn ,用户名和密码的设置请联系微博事业部; | ||
+ | * 以微博用户登陆; | ||
+ | * 创建应用,其中应用名称、应用地址、开发者的名称和网址为必填项; | ||
+ | * 创建成功后可以在“我的应用”选项中获得appkey,将appkey添加的接口url中,如http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872 ,接口即可访问; | ||
+ | |||
+ | '''访问限制''' | ||
+ | * 开发者网站域名需要与申请appkey时网址域名一致,否则接口访问受限,例如,申请的开发者网址为http://map.sina.com.cn ,则网站访问地址需要在map.sina.com.cn域名下; | ||
+ | * 同一个appkey每天的网问量限制在500次,如需增加访问量,请联系zhangchao2.staff.sina.com.cn; | ||
+ | ===示例代码=== | ||
+ | '''API调用示例:''' | ||
+ | |||
+ | <script type="text/javascript" lang="javascript" src=" http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872 "> </script> | ||
+ | |||
+ | '''代码示例:''' | ||
+ | |||
+ | function localSearch(){//关键词搜索 | ||
+ | var msl=new SLocalSearch();//初始化SLocalSearch类的一个新实例 | ||
+ | var mslp=new SLocalSearchOptions();//初始SLocalSearchOptions类的一个新实例。 | ||
+ | mslp.pageNum=2;//设置显示第几页 | ||
+ | msl.setCallbackFunction(myfunc);//设置回调函数 | ||
+ | msl.poiSearchByKeywords("酒店","0010",mslp);//调用关键词搜索方法 | ||
+ | } | ||
+ | |||
+ | function myfunc(data){//回调函数 | ||
+ | var result=data.result;//判断返回结果是否正确 | ||
+ | if(!result) return false; | ||
+ | var total=data.totalNum;//返回结果总数 | ||
+ | for(var i=0;i<data.poilist.length;i++){ | ||
+ | var x=data.poilist[i].x;//每个POI的x坐标 | ||
+ | var y=data.poilist[i].y;// 每个POI的y坐标 | ||
+ | var address = data.poilist[i].address; //每个POI的地址信息 | ||
+ | } | ||
+ | } | ||
+ | ==接口类== | ||
+ | ===SLocalSearch类=== | ||
+ | |||
+ | SLocalSearch封装了POI搜索功能,包括关键字查询、周边查询和视野内。通过创建一个SLocalSearch对象并调用关键字搜索、周边搜索和视野内搜索相应方法就可以实现本地搜索功能。 | ||
+ | |||
+ | '''构造函数''' | ||
+ | |||
+ | SLocalSearch() 初始化SLocalSearch类的一个新实例。 | ||
+ | |||
+ | '''关键字搜索''' | ||
+ | |||
+ | 根据关键词搜索POI | ||
+ | *方法: | ||
+ | :poiSearchByKeywords(keyword,citycode,localSearchOption)。 | ||
+ | *参数: | ||
+ | :keyword:搜索的关键词; | ||
+ | :citycode:城市代码, 格式为:0010,0020; | ||
+ | :option:为SLocalSearchOptions参数对象; | ||
+ | |||
+ | '''周边搜索''' | ||
+ | |||
+ | 通过中心点关键词查询符合条件的周边POI。 | ||
+ | *方法: | ||
+ | :poiSearchByCenterKeywords(centerKeywords,keyword,citycode,localSearchOption)。 | ||
+ | *参数: | ||
+ | :citycode:城市代码; | ||
+ | :option:为SLocalSearchOptions参数对象; | ||
+ | |||
+ | '''视野内搜索''' | ||
+ | 在地图视野内搜索查询相关的POI。 | ||
+ | *方法: | ||
+ | :poiSearchByView(keyword,category,xy,option)。 | ||
+ | *参数: | ||
+ | :keyword:搜索的关键词; | ||
+ | :category:搜索的分类; | ||
+ | :xy:视野范围,为地图右上和左下的坐标串,形如: x1,y1,x2,y2; | ||
+ | :option:为SLocalSearchOptions参数对象; | ||
+ | |||
+ | '''处理搜索回调函数''' | ||
+ | |||
+ | 设置回调方法,返回值为如下表格形式。 | ||
+ | *方法: | ||
+ | :setCallbackFunction(functionName) | ||
+ | *参数: | ||
+ | :functionName:回调方法 | ||
+ | *返回结果: | ||
+ | JSON示例 | ||
+ | { | ||
+ | " result":" 1表示正确返回" , | ||
+ | " totalNum ":"总的搜索结果数", | ||
+ | " poilist ":{"x":"POI点的x坐标", | ||
+ | "y":" POI点y坐标", | ||
+ | "name ":"地标名称", | ||
+ | "phoneNum ":"地标相关电话号码", | ||
+ | "address":"地标地址", | ||
+ | "introduce ":"地标相关详细信息", | ||
+ | "distance":"", | ||
+ | "citycode":"地标所在城市代码", | ||
+ | "category":"地标所属分类", | ||
+ | "picurl":"地标相关图片", | ||
+ | "bus":"地标所属城市是否有公交", | ||
+ | "navigator":"" | ||
+ | } | ||
+ | } | ||
+ | |||
+ | ===SLocalSearchOptions类=== | ||
+ | |||
+ | 此类代表SLocalSearch的可选参数,用来设置POI搜索的周边查询范围,返回第几页,返回结果个数等参数。 | ||
+ | |||
+ | '''构造函数''' | ||
+ | |||
+ | SLocalSearchOptions() 初始化SLocalSearchOptions类的一个新实例。 | ||
+ | |||
+ | '''属性''' | ||
+ | |||
+ | *recordsPerPage:返回每页几条记录。默认值:10; | ||
+ | *pageNum:返回第几页。默认值:1; | ||
+ | *start:返回第一条记录在结果集中的索引,默认为0; | ||
+ | *range:周边查询范。单位:m,默认值:2000m。周边查询专用; | ||
+ | *orderStyle:搜索结果是否按距离排序。默认值:"" ,按与关键字关联度从高到低排序;dr 查询结果按距离由进到远排序; | ||
+ | *category:查询分类条件,如category=category:150000; | ||
+ | *searchID:POI点ID; |
2010年5月26日 (三) 11:13的版本
目录 |
POI搜索API开发指南
POI搜索API是一套由JavaScript语言编写的应用程序接口,他提供了诸如本地搜索、周边搜索、视野内搜索等数据服务。
接口URL
http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872
注:appkey为接口访问授权码,需要注册获取。
开发者访问权限设置
POI搜索API的服务是免费的,但是需要申请appkey来验证开发者身份。
如何申请appkey
- 首先登录http://open.t.sina.com.cn ,用户名和密码的设置请联系微博事业部;
- 以微博用户登陆;
- 创建应用,其中应用名称、应用地址、开发者的名称和网址为必填项;
- 创建成功后可以在“我的应用”选项中获得appkey,将appkey添加的接口url中,如http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872 ,接口即可访问;
访问限制
- 开发者网站域名需要与申请appkey时网址域名一致,否则接口访问受限,例如,申请的开发者网址为http://map.sina.com.cn ,则网站访问地址需要在map.sina.com.cn域名下;
- 同一个appkey每天的网问量限制在500次,如需增加访问量,请联系zhangchao2.staff.sina.com.cn;
示例代码
API调用示例:
<script type="text/javascript" lang="javascript" src=" http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872 "> </script>
代码示例:
function localSearch(){//关键词搜索 var msl=new SLocalSearch();//初始化SLocalSearch类的一个新实例 var mslp=new SLocalSearchOptions();//初始SLocalSearchOptions类的一个新实例。 mslp.pageNum=2;//设置显示第几页 msl.setCallbackFunction(myfunc);//设置回调函数 msl.poiSearchByKeywords("酒店","0010",mslp);//调用关键词搜索方法 }
function myfunc(data){//回调函数 var result=data.result;//判断返回结果是否正确 if(!result) return false; var total=data.totalNum;//返回结果总数 for(var i=0;i<data.poilist.length;i++){ var x=data.poilist[i].x;//每个POI的x坐标 var y=data.poilist[i].y;// 每个POI的y坐标 var address = data.poilist[i].address; //每个POI的地址信息 } }
接口类
SLocalSearch类
SLocalSearch封装了POI搜索功能,包括关键字查询、周边查询和视野内。通过创建一个SLocalSearch对象并调用关键字搜索、周边搜索和视野内搜索相应方法就可以实现本地搜索功能。
构造函数
SLocalSearch() 初始化SLocalSearch类的一个新实例。
关键字搜索
根据关键词搜索POI
- 方法:
- poiSearchByKeywords(keyword,citycode,localSearchOption)。
- 参数:
- keyword:搜索的关键词;
- citycode:城市代码, 格式为:0010,0020;
- option:为SLocalSearchOptions参数对象;
周边搜索
通过中心点关键词查询符合条件的周边POI。
- 方法:
- poiSearchByCenterKeywords(centerKeywords,keyword,citycode,localSearchOption)。
- 参数:
- citycode:城市代码;
- option:为SLocalSearchOptions参数对象;
视野内搜索 在地图视野内搜索查询相关的POI。
- 方法:
- poiSearchByView(keyword,category,xy,option)。
- 参数:
- keyword:搜索的关键词;
- category:搜索的分类;
- xy:视野范围,为地图右上和左下的坐标串,形如: x1,y1,x2,y2;
- option:为SLocalSearchOptions参数对象;
处理搜索回调函数
设置回调方法,返回值为如下表格形式。
- 方法:
- setCallbackFunction(functionName)
- 参数:
- functionName:回调方法
- 返回结果:
JSON示例
{ " result":" 1表示正确返回" , " totalNum ":"总的搜索结果数", " poilist ":{"x":"POI点的x坐标", "y":" POI点y坐标", "name ":"地标名称", "phoneNum ":"地标相关电话号码", "address":"地标地址", "introduce ":"地标相关详细信息", "distance":"", "citycode":"地标所在城市代码", "category":"地标所属分类", "picurl":"地标相关图片", "bus":"地标所属城市是否有公交", "navigator":"" } }
SLocalSearchOptions类
此类代表SLocalSearch的可选参数,用来设置POI搜索的周边查询范围,返回第几页,返回结果个数等参数。
构造函数
SLocalSearchOptions() 初始化SLocalSearchOptions类的一个新实例。
属性
- recordsPerPage:返回每页几条记录。默认值:10;
- pageNum:返回第几页。默认值:1;
- start:返回第一条记录在结果集中的索引,默认为0;
- range:周边查询范。单位:m,默认值:2000m。周边查询专用;
- orderStyle:搜索结果是否按距离排序。默认值:"" ,按与关键字关联度从高到低排序;dr 查询结果按距离由进到远排序;
- category:查询分类条件,如category=category:150000;
- searchID:POI点ID;