分享使用 飛鯨體育數據 www.feijing88.com 接口調用的示例代碼,Dota2的【選手基本信息】接口。
import 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 DotaPlayer {
public static void main(String[] args) {
try {
String content = getContent();
Respond rsp = JSON.parseObject(content, Respond.class);
System.out.println(rsp);
} 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/DotaPlayer.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 Player data;
@Override
public String toString() {
return "Respond{" +
"code=" + code +
", message='" + message + '\'' +
", data=" + data +
'}';
}
public void setCode(int code) {
this.code = code;
}
public void setMessage(String message) {
this.message = message;
}
public void setData(Player data) {
this.data = data;
}
}
public static class Player {
@JSONField
private int playerId;
@JSONField
private int teamId;
@JSONField
private String avatar;
@JSONField
private String name;
@JSONField
private String position;
@Override
public String toString() {
return "Player{" +
"playerId=" + playerId +
", teamId=" + teamId +
", avatar='" + avatar + '\'' +
", name='" + name + '\'' +
", position='" + position + '\'' +
'}';
}
public int getPlayerId() {
return playerId;
}
public void setPlayerId(int playerId) {
this.playerId = playerId;
}
public int getTeamId() {
return teamId;
}
public void setTeamId(int teamId) {
this.teamId = teamId;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}
}
}
API 返回數據如下(部分):
Respond{code=200, message='成功', data=Player{playerId=59384493, teamId=2667, avatar='http://qn.feijing88.com/feijing-home/egame/image/20190815/d41b1ae9ca66466fbc7aa03e427b0b7d.png', name='Chalice', position='3'}}