CSGO 的【即时指数】api 接口调用示例,在线文档查看,需注册下
mport com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
/**
* @API: 赔率信息
* @Website: https://www.feijing88.com
*/
public class CsgoBet {public static void main(String[] args) {
try {String content = getContent();
Respond rsp = JSON.parseObject(content, Respond.class);
System.out.println(rsp.code);
System.out.println(rsp.message);
rsp.getData().forEach(System.out::println);
} catch (Throwable t) {t.printStackTrace();
}
}
/**
* 获取 API 返回内容
* <p>
* Note: 这里为了方便测试我使用了一份本地文件,使用时应替换为真实接口返回内容
*/
private static String getContent() {
try {StringBuilder builder = new StringBuilder();
List<String> lines = Files.readAllLines(Paths.get("./src/main/resources/CsgoBet.json"), StandardCharsets.UTF_8);
lines.forEach(builder::append);
return builder.toString();} catch (Throwable t) {t.printStackTrace();
return "";
}
}
public static class Respond {
@JSONField
private int code;
@JSONField
private String message;
@JSONField
private List<Bet> data;
public int getCode() {return code;}
public void setCode(int code) {this.code = code;}
public String getMessage() {return message;}
public void setMessage(String message) {this.message = message;}
public List<Bet> getData() {return data;}
public void setData(List<Bet> data) {this.data = data;}
}
public static class Bet {
@JSONField
private String betId;
@JSONField
private String matchId;
@JSONField
private String title;
@JSONField
private long endTime;
@JSONField
private int status;
@JSONField
private String resultId;
@JSONField
private List<Options> options;
@JSONField
private int betType;
@JSONField
private int boardNum;
@JSONField
private String typeDesc;
@Override
public String toString() {
return "Bet{" +
"betId='" + betId + '\'' +
", matchId='" + matchId + '\'' +
", title='" + title + '\'' +
", endTime=" + endTime +
", status=" + status +
", resultId='" + resultId + '\'' +
", options=" + options +
", betType=" + betType +
", boardNum=" + boardNum +
", typeDesc='" + typeDesc + '\'' +
'}';
}
public void setBetId(String betId) {this.betId = betId;}
public void setMatchId(String matchId) {this.matchId = matchId;}
public void setTitle(String title) {this.title = title;}
public void setEndTime(long endTime) {this.endTime = endTime;}
public void setStatus(int status) {this.status = status;}
public void setResultId(String resultId) {this.resultId = resultId;}
public void setOptions(List<Options> options) {this.options = options;}
public void setBetType(int betType) {this.betType = betType;}
public void setBoardNum(int boardNum) {this.boardNum = boardNum;}
public void setTypeDesc(String typeDesc) {this.typeDesc = typeDesc;}
}
public static class Options {
@JSONField
private String betItemId;
@JSONField
private String teamId;
@JSONField
private String name;
@JSONField
private String odds;
@Override
public String toString() {
return "Options{" +
"betItemId='" + betItemId + '\'' +
", teamId='" + teamId + '\'' +
", name='" + name + '\'' +
", odds='" + odds + '\'' +
'}';
}
public void setBetItemId(String betItemId) {this.betItemId = betItemId;}
public void setTeamId(String teamId) {this.teamId = teamId;}
public void setName(String name) {this.name = name;}
public void setOdds(String odds) {this.odds = odds;}
}
}
API 返回数据如下(部分):
200
成功
Bet{betId='7887031-8', matchId='7887031', title='全场获胜', endTime=1554184800000, status=1, resultId='null', options=[Options{betItemId='2332075-3-1', teamId='9966', name='NiP', odds='1'}, Options{betItemId='2332075-3-2', teamId='3202', name='ViCi', odds='13.51'}], betType=1, boardNum=0, typeDesc=''}
Bet{betId='7887031-62', matchId='7887031', title='全场获胜', endTime=1554184800000, status=1, resultId='null', options=[Options{betItemId='2332075-16-1', teamId='9966', name='NiP', odds='1'}, Options{betItemId='2332075-16-2', teamId='3202', name='ViCi', odds='13.51'}], betType=1, boardNum=0, typeDesc=''}
Bet{betId='7887031-3', matchId='7887031', title='全场获胜', endTime=1554184800000, status=1, resultId='null', options=[Options{betItemId='2332075-7-1', teamId='9966', name='NiP', odds='1.01'}, Options{betItemId='2332075-7-2', teamId='3202', name='ViCi', odds='14'}], betType=1, boardNum=0, typeDesc=''}
Bet{betId='7887031-66', matchId='7887031', title='全场获胜', endTime=1554184800000, status=1, resultId='null', options=[Options{betItemId='2332075-11-1', teamId='9966', name='NiP', odds='1.01'}, Options{betItemId='2332075-11-2', teamId='3202', name='ViCi', odds='14'}], betType=1, boardNum=0, typeDesc=''}
Bet{betId='7887031-69', matchId='7887031', title='全场获胜', endTime=1554184800000, status=1, resultId='null', options=[Options{betItemId='2332075-14-1', teamId='9966', name='NiP', odds='1'}, Options{betItemId='2332075-14-2', teamId='3202', name='ViCi', odds='11'}], betType=1, boardNum=0, typeDesc=''}
Bet{betId='7887031-2', matchId='7887031', title='全场获胜', endTime=1554184800000, status=1, resultId='null', options=[Options{betItemId='2332075-6-1', teamId='9966', name='NiP', odds='1.22'}, Options{betItemId='2332075-6-2', teamId='3202', name='ViCi', odds='4'}], betType=1, boardNum=0, typeDesc=''}