接口地址:https://way.jd.com/jisuapi/transitLine |
---|
返回格式:json |
请求方式:get/post |
请求示例:https://way.jd.com/jisuapi/transitLine?city=杭州&cityid=382&transitno=86&appkey=您申请的APPKEY |
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
appkey | sting | 必填 | 该平台的appkey 扫码关注公众号 |
city | string | 选填 | 城市 cityid city任选其一 |
cityid | int | 选填 | 城市ID cityid city任选其一 |
transitno | string | 必填 | 车次 |
名称 | 类型 | 说明 |
---|---|---|
code | string | 状态码 |
charge | boolean | 是否扣费 |
msg | string | 状态消息 |
result | object | 数据查询结果 |
{
"code": "10000",
"charge": false,
"msg": "查询成功",
"result": {
"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"
}
]
}]
}
}
错误码 | 说明 |
---|---|
10001 | 错误的请求appkey |
11010 | 商家接口调用异常,请稍后再试 |
11030 | 商家接口返回格式有误 |
10003 | 不存在相应的数据信息 |
10004 | URL上appkey参数不能为空 |
10010 | 接口需要付费,请充值 |
10020 | 万象系统繁忙,请稍后再试 |
10030 | 调用万象网关失败, 请与万象联系 |
10040 | 超过每天限量,请明天继续 |
10050 | 用户已被禁用 |
10060 | 提供方设置调用权限,请联系提供方 |
10070 | 该数据只允许企业用户调用 |
10090 | 文件大小超限,请上传小于1M的文件 |
<?php
/**
* Created by PhpStorm.
* User: FZS
* Time: 2021/01/01 21:26
*/
class freeApi
{
private $apiUrl;
public function __construct()
{
$this->apiUrl = 'https://way.jd.com/jisuapi/transitLine?city=杭州&cityid=382&transitno=86&appkey=您申请的APPKEY';
}
/**
* 获取结果
* @return array
*/
public function getResult()
{
return file_get_contents($this->apiUrl);
}
}
package main
import (
"fmt"
"io/ioutil"
"log"
"net/http"
)
const (
APIURL = "https://way.jd.com/jisuapi/transitLine?city=杭州&cityid=382&transitno=86&appkey=您申请的APPKEY"
)
func main() {
queryUrl := fmt.Sprintf("%s",APIURL)
resp, err := http.Get(queryUrl)
if err != nil {
log.Println(err)
return
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}