前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【愚公系列】2022年04月 微信小程序-项目篇(公交查询)-03周边站点-获取周边站址

【愚公系列】2022年04月 微信小程序-项目篇(公交查询)-03周边站点-获取周边站址

作者头像
愚公搬代码
发布2022-04-30 09:12:06
4550
发布2022-04-30 09:12:06
举报
文章被收录于专栏:历史专栏

文章目录


前言

1.相关API

接口地址:https://api.jisuapi.com/transit/nearby 返回格式:JSON,JSONP 请求方法:GET POST 请求示例:

代码语言:javascript
复制
https://api.jisuapi.com/transit/nearby?city=杭州&address=西溪花园紫菱苑&appkey=yourappkey

请求参数:

参数名称

类型

必填

说明

city

string

城市

address

string

地址

返回参数:

参数名称

类型

说明

station

string

站点名称

lat

string

站点纬度

lng

string

站点经度

distance

string

距离(米)

lines

string

线路列表

API错误码:

代号

说明

201

公交车次为空

202

城市ID为空

203

起点为空

204

终点为空

205

城市为空

206

公交站点为空

207

地址为空

210

没有信息

系统错误码:

代号

说明

101

APPKEY为空或不存在

102

APPKEY已过期

103

APPKEY无请求此数据权限

104

请求超过次数限制

105

IP被禁止

106

IP请求超过限制

107

接口维护中

108

接口已停用

2.相关案例

请求API:https://api.jisuapi.com/transit/line?cityid=382&transitno=86&appkey=你的密钥 返回JSON:

代码语言:javascript
复制
{
    "status": 0,
    "msg": "ok",
    "result": [
        {
            "transitno": "86路",
            "startstation": "西溪竞舟苑",
            "endstation": "景芳小区",
            "starttime": "05:45",
            "endtime": "21:45",
            "price": "2",
            "maxprice": "2.00",
            "list": [
                {
                    "sequenceno": 1,
                    "station": "西溪竞舟苑",
                    "lat": "30.28806",
                    "lng": "120.06484"
                },                
                {
                    "sequenceno": 22,
                    "station": "和平广场",
                    "lat": "30.29524",
                    "lng": "120.18258"
                },
                {
                    "sequenceno": 25,
                    "station": "濮家新村",
                    "lat": "30.29059",
                    "lng": "120.20558"
                },                
                {
                    "sequenceno": 29,
                    "station": "景芳小区",
                    "lat": "30.27631",
                    "lng": "120.21277"
                }
            ]
        },
        {
            "transitno": "86路",
            "startstation": "景芳小区",
            "endstation": "西溪竞舟苑",
            "starttime": "05:45",
            "endtime": "21:45",
            "price": "2",
            "maxprice": "2.00",
            "list": [
                {
                    "sequenceno": 1,
                    "station": "景芳小区",
                    "lat": "30.27628",
                    "lng": "120.21274"
                },
                {
                    "sequenceno": 2,
                    "station": "濮家新村",
                    "lat": "30.28873",
                    "lng": "120.20592"
                },                
                {
                    "sequenceno": 25,
                    "station": "西溪竞舟苑",
                    "lat": "30.28807",
                    "lng": "120.06484"
                }
            ]
        }
    ]
}

一、获取周边站址

代码语言:javascript
复制
/**
 * 得到周边站址
 */
getStationList() {
  var _this = this
  // 调用接口
  var locationInfo = _this.data.locationInfo
  console.log(locationInfo)
  wx.request({
    url: 'http://api.jisuapi.com/transit/nearby', //周围地址接口
    data: {
      appkey: config.Config.busappkey,
      city: locationInfo.city,
      address: locationInfo.address
    },
    header: {
      'content-type': 'application/json' // 默认值
    },
    success: function (res) {
      var stationList = res.data.result
      console.log(stationList)
      console.log(stationList.length)
      for (var i = 0; i < stationList.length; i++) {
        if(stationList[i].lines !=undefined){
          var temp = []
          for (var j = 0; j < stationList[i].lines.length; j++) {
            var line = stationList[i].lines[j]
            var newLine = line.substring(0, line.indexOf('('))
            if (temp.indexOf(newLine) == -1) {
              temp.push(newLine)
            }
          }
          stationList[i].lines = temp
        }
      }
      _this.setData({
        stationList: stationList
      })
      //设置标记点
      _this.setMapMarkers()
      console.log(_this.data.stationList)
    },
    fail: function (res) {
      console.log(res);
    },
    complete: function (res) {
      app.hideLoading()
      // console.log(res);
      wx.hideNavigationBarLoading() //完成停止加载
      wx.stopPullDownRefresh() //停止下拉刷新
    }
  })
},

总结

本篇获取周边站址的API是第三方API,第三方API其实在应用中很常见比如:车牌识别、图片搜索、短信接口、语音识别、语音合成、天气数据、地铁查询、实时物流、飞机查询等等。

相关地图API接口:

  • 百度地图- 百度地图提供了Android, iOS版本的SDK和JavaScript API,可进行定位、地图、数据、出行、鹰眼轨迹和分析服务。
  • 高德地图- 高德地图提供了JavaScript和web服务API,Android和iOS SDK,支持地图,定位,搜索,路线规划,导航和室内地图等。
  • 腾讯地图- 腾讯地图提供了JavaScript API,Android和iOS SDK,支持定位,地图,地点搜索,路线和导航等。
  • 天地图- 天地图提供了H5 API和JavaScript API等web API,同时提供了Android和iOS SDK,支持基础地图服务,图层管理,地图覆盖物,地图工具,地名搜索和出行规划服务。
  • 图吧地图- 图吧提供了JavaScript和Flash API,Android和iOS SDK,支持定位,地址解析,位置标注,位置截图,路线规划,周边查询,兴趣点搜索和在线导航。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022/04/29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 前言
    • 1.相关API
      • 2.相关案例
      • 一、获取周边站址
      • 总结
      相关产品与服务
      短信
      腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档