@njy
2016-10-25T01:23:33.000000Z
字数 6755
阅读 1776
新浪彩通
首页网址暂定:http://lottery.sina.com.cn/ai/sports/index.shtml
需求分析:融合NBA到现有小炮足球页面中,形成统一风格的小炮产品。
订单 个人中心 点击后需要验证登录信息
1.需要一个比赛列表接口 (可夫出)
1.需要一个包列表接口 (可夫出)
所需接口如下(接口支持jsonp调用),以下接口是对照足球接口,仅供参考:
1.获取当月没有比赛的日期
篮球(一次性吐出所有日期):
http://ai.lottery.sina.com.cn/nba/queryNotMatch.htm
足球:
http://match.lottery.sina.com.cn/football/index/calNoMatchDates?format=json&year=2016&mon=10
{
result: - {
status: - {
code: 0,
msg: ""
},
timestamp: "Thu Oct 13 10:07:36 +0800 2016",
data: - [
"2016-10-04" //必须
]
}
}
2.获取当日比赛接口(每天最多有15场比赛,所以一次性取出数据,不需要分页面,page参数可以去掉)
篮球:
http://ai.lottery.sina.com.cn/nba/queryMatchByDate.htm?dateStr=20161015
足球:
http://match.lottery.sina.com.cn/football/index/dayTypeMatches?format=json&dpc=1&date=2016-10-11&page=1&type=
显示已开赛的比赛 显示未开赛的比赛
加参数status=curfull(已开赛) status=pre(未开赛)
http://match.lottery.sina.com.cn/football/index/dayTypeMatches?format=json&dpc=1&date=2016-10-11&page=1&type=&status=curfull
{
result: - {
status: - {
code: 0,
msg: ""
},
timestamp: "Thu Oct 13 10:09:16 +0800 2016",
limit: 10,
type: "all",
page: 1,
data: - [
- {
livecast_id: "151654", //直播大厅id 必须
LeagueType_cn: "世亚预",//赛事类型
date: "2016-10-11",
time: "17:00",
Team1Id: "1165",
Team1: "澳大利亚",//客队
Team2Id: "960",
Team2: "日本",//主队
IfHot: "1",//是否为热门比赛
status: "3", //比赛状态 1:未赛 2:赛中 3:赛后
odds_id: "3590474", //赔率id
Score1: "1",//客队赛中赛后比分
Score2: "1",//主队赛中赛后比分
rank1: "西6",//客队季后赛排名
rank2: "西2",//主队季后赛排名
-------------------非必须其他字段
MatchCity: "墨尔本",
Situation: "墨尔本球场",
group: "",
Flag1: "http://www.sinaimg.cn/lf/sports/logo85/1165.png",
Flag2: "http://www.sinaimg.cn/lf/sports/logo85/960.png",
Flag1_small: "http://www.sinaimg.cn/lf/sports/logo35/1165.png",
Flag2_small: "http://www.sinaimg.cn/lf/sports/logo35/960.png",
...
}
]
}
}
3.获取用户账号当日关注比赛列表 已收藏的当日比赛
http://match.lottery.sina.com.cn/football/usrac/focusDateMatches?date=2016-10-11&format=json
4.已购买的当日比赛
篮球:
http://ai.lottery.sina.com.cn/nba/queryBuyMatch.htm?dateStr=20161014&thirdId=1834456825
足球:
http://match.lottery.sina.com.cn/football/payment/payMatchesDate?format=json&date=2016-10-11&type=
同2
5.给一场比赛加关注
http://match.lottery.sina.com.cn/football/usrac/setMatchFocus?id=151656&format=json
6.给一场比赛取消关注
http://match.lottery.sina.com.cn/football/usrac/remMatchFocus?id=151656&format=json
7.单场购买(根据比赛matchId获取赔率,赛中和赛后直接出预测比分条数据)
http://odds.sports.sina.com.cn/odds/uefa/getOpenedMatchForecast?matchId=151654&format=json
{
result: - {
status: - {
code: 0,
msg: ""
},
matchId: 151792, //直播大厅id 必须
ULswitch: 1, //亚盘'0 不可购买 1可以购买' 后台判断是否可以购买,假如没有这个逻辑,直接写1
SPFswitch: 1, //胜平负 '0 不可购买 1可以购买'
DXswitch: 1, //大小球 '0 不可购买 1可以购买'
matchStatus: "1",//比赛状态 1:未赛 2:赛中 3:赛后
ULTape: -1, //亚盘盘口
ULTape_cn: "一球", //亚盘盘口中文
UL_o1: 1.7, //亚盘客队赔率
UL_o2: 2.2, //亚盘主队赔率
DXTape: "2.5/3",
DXTape_cn: "2.5/3球",
DX_o1: 1.95,//大小球客队赔率
DX_o2: 1.9,//大小球主队赔率
SPF_o1: 1.4,//胜平负 胜赔率
SPF_o2: 4.5,//胜平负 平赔率
SPF_o3: 7.5,//胜平负 负赔率
--------data 赛前( matchStatus: "1")为空数组 赛中赛后有值
data:[
upperTapePro: "0.4876", //亚盘客队预测百分比
lowTapePro: "0.5124",//亚盘主队预测百分比
DXbigPro: "0.394",//大小球大球预测百分比
DXsmallPro: "0.606",//大小球小球预测百分比
SPFwinPro: "0.2405",//胜百分比
SPFdrawPro: "0.3837",//平百分比
SPFlosePro: "0.3759",//负百分比
matchTime: "1476280800",
hostScore: "3", //客队比分
awayScore: "0", //主队比分
---- 赛中为0 赛后为预测显示 准 错 走盘
ULforecastResult: 2,//枚举:0(无结果),1(准),2(错),3 (走)
SPFforecastResult: 2,
DXforecastResult: 2
]
}
}
8.用户购买过这场比赛,获取预测比分条数据
http://odds.sports.sina.com.cn/odds/uefa/ckPro?thirdId=1834456825&gameType=z5_sx&matchId=151654&format=json&ck=five
data = {
"result": {
"status": {
"code": 0,
"msg": ""
},
"matchId":matchId,
"thirdId":"1247653442",
"gameType":gameType,
"member_id": "519526",
"data": {
-----根据gameType=z5_sx类型返回对应的预测结果
"hostWinPro":0.65,//'亚盘主队预测百分比/胜/大球'
"awayWinPro":0.35,//'亚盘客队预测百分比/负/小球'
"pinWinPro":0.35,//平
"awayScore":0, //客队比分
"hostScore":0, //主队比分
"pankou":"1/1.25"//'盘口' 非必须
"forecastResult":1, //枚举:0(无结果),1(准),2(错),3 (走)
"matchStatus":3 //1(未赛),2(赛中),3(完赛)
}
}
}
9.验证订单号是否存在
http://ai.lottery.sina.com.cn/five/dc.htm?thirdId=1834456825&matchId=151654&gameType=z5_spf
{
memberId: 136,
orderLogNo: "D1610131122429513665",
result: "success",
code: 200
}
10.获取当前显示价格
http://match.lottery.sina.com.cn/football/matchPrice/curPrice?format=json
{
result: - {
status: - {
code: 0,
msg: ""
},
timestamp: "Thu Oct 13 13:45:13 +0800 2016",
source_pirce: 29,//原价
data: - {
price: 29//实际价格
}
}
}
11.生成订单号
http://match.lottery.sina.com.cn/football/payment/dcToPay?format=json
{
"matchId":"151793",
"memberId":136,
"gameType":"z5_dx",
"pankou":"2.5",
"result":"success",
"code":200,
"orderLogNo":"D1610131347323776501", //必须
"hostTeam":"帕尔梅拉斯",
"awayTeam":"克鲁塞罗",
"matchTime":"2016-10-14 06:30",
"orderAmount":"29"
}
{
result: - {
status: - {
code: 405,
msg: "你的订单未支付成功"
},
data:[]
}
}
{
"result": {
"status": {
"code": 0,
"msg": ""
},
"matchId":matchId,
"thirdId":util.wbId,
"gameType":gameType,
"member_id": memberId,
"data": {
-----根据gameType=z5_sx类型返回对应的预测结果
"hostWinPro":0.35,//'亚盘主队预测百分比/胜/大球'
"awayWinPro":0.35,//'亚盘客队预测百分比/负/小球'
"pinWinPro":0.35,//平
"awayScore":0,//客队比分
"hostScore":0,//主队比分
"pankou":"1/1.25"//'盘口' 非必须
}
}
}
13.账号注册页面
http://ai.lottery.sina.com.cn/uc/register/bindPhone
发布出两个接口 (发布出)
以下是二级页面接口:
https://www.zybuluo.com/lanbos/note/352261
包括的页面有:
比赛资讯
常规数据
个人中心
模型数据(除公共头部外,其他都已经是接口。)
欧洲赔率
我的订单
消费记录
亚洲盘口
2016-10-24:
小军,现在这边需要和之前的逻辑对应,是否能帮忙把字段对应转一下;需要转的字段如下:
{
date: "2016-10-26",
Team1Logo: "http://www.sinaimg.cn/lf/sports/nba_85/18.png", // Flag1
status_cn: "未开赛",
letAwayWinOdds: "0.94", //没用去掉
Score2: 0,
Team2Logo: "http://www.sinaimg.cn/lf/sports/nba_85/5.png",// Flag2
aicai_id: 256833,
letPointPlate: -9.5,//没用去掉
awayWinOdds: "0.00",//没用去掉
Team2: "骑士",
Team1: "尼克斯",
Team1Id: 639,
League: "NBA",
IfHot: 1,
smallWinOdds: "0.00",//没用去掉
bigWinOdds: "0.00",//没用去掉
LeagueType_cn: "常规赛",
letHostWinOdds: "0.94",//没用去掉
rank1: "-",
rank2: "-",
Score1: 0,
totalScoreTape: 0,//没用去掉
time: "08:00",
hostWinOdds: "0.00",//没用去掉
Team2Id: 645,
status: 50 //比赛状态 1:未赛 2:赛中 3:赛后
}
需要变名称字段:Team1Logo =》Flag1 Team2Logo =》Flag2 status =》判断为 1:未赛 2:赛中 3:赛后
http://ai.lottery.sina.com.cn/nba/data/top.htm?matchIds=246288&callback=top_246288
{
code: 0,
data: - [
- {
Team1Logo: "http://www.sinaimg.cn/lf/sports/nba_85/5.png",//Flag1
Team2CurrentRank: 8,
Team1Id: 645,
Team1GuestRank: 1,
Score2: 91,
matchTime: "2016-04-23 07:00",
Team2Logo: "http://www.sinaimg.cn/lf/sports/nba_85/8.png",//Flag2
aicai_id: "246288",
leagueName: "NBA",
Team1CurrentRank: 1,
matchStatus: 3, //status
round: "东部第一圈",
distance_2_cur: 20848,
Score1: 101,
Team2LastSeasonRank: 12,
season: "15-16",
Team2: "活塞",
Team1: "骑士",
roundType: "季后赛",
Team2HomeRank: 8,
Team2Id: 3791,
Team1LastSeasonRank: 2
//新增
Team1en: "",
Team2en: "",球队英文名,没有填空
MatchDate: matchTime.split(' ')[0],
MatchTime: matchTime.split(' ')[1],
week_cn:星期几,
}
]
}
1.需要变名称字段:Team1Logo =》Flag1 Team2Logo =》Flag2 matchStatus =》status
2.新增字段 Team1en Team2en MatchDate MatchTime week_cn
//当id 为一个时 去掉data 的数组 直接放一个对象
{
result: - {
status: - {
code: 0,
msg: ""
},
data: - {
}
}
}
1.包裹为下面的这种形式