Location

跳转到: 导航, 搜索

目录

POI搜索API开发指南

POI搜索API是一套由JavaScript语言编写的应用程序接口,他提供了诸如本地搜索、周边搜索、视野内搜索等数据服务。

接口URL

http://map.sina.com.cn/js/isinaMap.php?appkey=1724954872

注:appkey为接口访问授权码,需要注册获取。

开发者访问权限设置

POI搜索API的服务是免费的,但是需要申请appkey来验证开发者身份。

如何申请appkey

访问限制

  • 开发者网站域名需要与申请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":"地标所属城市是否有公交"
          }
}

SLocalSearchOptions类

此类代表SLocalSearch的可选参数,用来设置POI搜索的周边查询范围,返回第几页,返回结果个数等参数。

构造函数

SLocalSearchOptions() 初始化SLocalSearchOptions类的一个新实例。

属性

  • recordsPerPage:返回每页几条记录。默认值:10;
  • pageNum:返回第几页。默认值:1;
  • start:返回第一条记录在结果集中的索引,默认为0;
  • range:周边查询范。单位:m,默认值:2000m,周边查询专用;
  • orderStyle:搜索结果是否按距离排序。默认值:"" ,按与关键字关联度从高到低排序,dr 为查询结果按距离由进到远排序;
  • category:查询分类条件,如category=category:150000;
  • searchID:POI点ID;