电竞英雄联盟LOL数据api接口示例

简介: 电竞英雄联盟LOL数据api接口示例

分享下英雄联盟LOL接口调用的示例代码,查看文档

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 LolHero {
 
    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/LolHero.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<Hero> 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<Hero> getData() {
            return data;
        }
 
        public void setData(List<Hero> data) {
            this.data = data;
        }
    }
 
    public static class Hero {
        @JSONField
        private int heroId;
        @JSONField
        private int leagueId;
        @JSONField
        private double kda;
        @JSONField
        private double killAverage;
        @JSONField
        private double deathAverage;
        @JSONField
        private double assistAverage;
        @JSONField
        private String position;
        @JSONField
        private double pickRate;
        @JSONField
        private double banRate;
        @JSONField
        private double winRate;
 
        @Override
        public String toString() {
            return "Hero{" +
                    "heroId=" + heroId +
                    ", leagueId=" + leagueId +
                    ", kda=" + kda +
                    ", killAverage=" + killAverage +
                    ", deathAverage=" + deathAverage +
                    ", assistAverage=" + assistAverage +
                    ", position='" + position + '\'' +
                    ", pickRate=" + pickRate +
                    ", banRate=" + banRate +
                    ", winRate=" + winRate +
                    '}';
        }
 
        public void setHeroId(int heroId) {
            this.heroId = heroId;
        }
 
        public void setLeagueId(int leagueId) {
            this.leagueId = leagueId;
        }
 
        public void setKda(double kda) {
            this.kda = kda;
        }
 
        public void setKillAverage(double killAverage) {
            this.killAverage = killAverage;
        }
 
        public void setDeathAverage(double deathAverage) {
            this.deathAverage = deathAverage;
        }
 
        public void setAssistAverage(double assistAverage) {
            this.assistAverage = assistAverage;
        }
 
        public void setPosition(String position) {
            this.position = position;
        }
 
        public void setPickRate(double pickRate) {
            this.pickRate = pickRate;
        }
 
        public void setBanRate(double banRate) {
            this.banRate = banRate;
        }
 
        public void setWinRate(double winRate) {
            this.winRate = winRate;
        }
    }
}

API 返回数据如下(部分):

成功
Hero{heroId=1, leagueId=51, kda=4.0, killAverage=0.2, deathAverage=0.1, assistAverage=0.3, position='中单', pickRate=5.882, banRate=0.0, winRate=71.429}
Hero{heroId=1, leagueId=51, kda=4.0, killAverage=0.2, deathAverage=0.1, assistAverage=0.3, position='中单', pickRate=5.882, banRate=0.0, winRate=71.429}
Hero{heroId=2, leagueId=51, kda=3.6, killAverage=0.0, deathAverage=0.1, assistAverage=0.2, position='中单', pickRate=1.681, banRate=0.0, winRate=50.0}
Hero{heroId=3, leagueId=51, kda=2.4, killAverage=0.1, deathAverage=0.1, assistAverage=0.2, position='上单', pickRate=5.882, banRate=0.0, winRate=57.143}
Hero{heroId=3, leagueId=51, kda=2.4, killAverage=0.1, deathAverage=0.1, assistAverage=0.2, position='上单', pickRate=5.882, banRate=0.0, winRate=57.143}
Hero{heroId=4, leagueId=51, kda=3.0, killAverage=0.2, deathAverage=1.0, assistAverage=2.9, position='辅助', pickRate=42.017, banRate=52.941, winRate=56.0}
Hero{heroId=6, leagueId=51, kda=15.0, killAverage=0.0, deathAverage=0.0, assistAverage=0.1, position='中单', pickRate=0.84, banRate=3.361, winRate=100.0}
Hero{heroId=8, leagueId=51, kda=2.4, killAverage=0.0, deathAverage=0.0, assistAverage=0.1, position='ADC', pickRate=1.681, banRate=0.84, winRate=0.0}
Hero{heroId=10, leagueId=51, kda=6.8, killAverage=0.2, deathAverage=0.1, assistAverage=0.3, position='中单', pickRate=6.723, banRate=2.521, winRate=62.5}
Hero{heroId=11, leagueId=51, kda=1.5, killAverage=0.0, deathAverage=0.0, assistAverage=0.0, position='辅助', pickRate=0.84, banRate=0.0, winRate=0.0}
Hero{heroId=13, leagueId=51, kda=2.4, killAverage=0.0, deathAverage=0.0, assistAverage=0.1, position='ADC', pickRate=0.84, banRate=0.0, winRate=0.0}
Hero{heroId=14, leagueId=51, kda=3.4, killAverage=0.1, deathAverage=0.6, assistAverage=2.0, position='辅助', pickRate=28.571, banRate=9.244, winRate=50.0}
Hero{heroId=15, leagueId=51, kda=10.0, killAverage=0.0, deathAverage=0.0, assistAverage=0.1, position='ADC', pickRate=0.84, banRate=0.0, winRate=0.0}
相关文章
|
2月前
|
JSON 安全 API
亚马逊商品列表API秘籍!轻松获取商品列表数据
亚马逊商品列表API(SP-API)提供标准化接口,支持通过关键词、分类、价格等条件搜索商品,获取ASIN、价格、销量等信息。采用OAuth 2.0认证与AWS签名,保障安全。数据以JSON格式传输,便于开发者批量获取与分析。
|
2月前
|
JSON 缓存 算法
如何通过API获取1688商品类目数据:技术实现指南
1688开放平台提供alibaba.category.get接口,支持获取全量商品类目树。RESTful架构,返回JSON数据,含类目ID、名称、层级等信息。需注册账号、创建应用并授权。请求需签名认证,QPS限10次,建议缓存更新周期≥24小时。
245 2
|
2月前
|
缓存 监控 前端开发
顺企网 API 开发实战:搜索 / 详情接口从 0 到 1 落地(附 Elasticsearch 优化 + 错误速查)
企业API开发常陷参数、缓存、错误处理三大坑?本指南拆解顺企网双接口全流程,涵盖搜索优化、签名验证、限流应对,附可复用代码与错误速查表,助你2小时高效搞定开发,提升响应速度与稳定性。
|
2月前
|
JSON API 数据格式
淘宝拍立淘按图搜索API系列,json数据返回
淘宝拍立淘按图搜索API系列通过图像识别技术实现商品搜索功能,调用后返回的JSON数据包含商品标题、图片链接、价格、销量、相似度评分等核心字段,支持分页和详细商品信息展示。以下是该API接口返回的JSON数据示例及详细解析:
|
2月前
|
XML JSON API
苏宁商品详情API秘籍!轻松获取商品详情数据
苏宁商品详情API基于RESTful架构,支持JSON/XML格式,通过AppKey、AppSecret与签名三重认证,结合OAuth 2.0实现安全调用。开发者可获取商品名称、价格、销量、库存、促销等实时数据,适用于电商分析与商业智能。接口强制使用HTTPS协议,支持POST/GET请求,统一采用UTF-8编码,确保数据传输安全可靠。
|
2月前
|
自然语言处理 监控 API
速卖通商品详情API秘籍!轻松获取SKU属性数据
速卖通商品详情API(aliexpress.item.get)支持通过编程获取商品标题、价格、SKU、库存、销量、物流模板、评价及店铺信息,适用于价格监控、选品分析等场景。接口支持多语言返回,采用AppKey+AppSecret+Token认证,需签名验证,确保安全调用。
|
2月前
|
安全 API
亚马逊商品详情 API 秘籍!轻松获取 SKU 属性数据
亚马逊商品详情API是官方接口,通过ASIN获取商品标题、价格、库存、评价等50余项数据,支持多站点查询。包含Product Advertising API与MWS两类,分别用于商品信息获取和卖家店铺管理,采用AWS4-HMAC-SHA256认证,保障请求安全。
|
2月前
|
人工智能 自然语言处理 测试技术
Apipost智能搜索:只需用业务语言描述需求,就能精准定位目标接口,API 搜索的下一代形态!
在大型项目中,API 数量庞大、命名不一,导致“找接口”耗时费力。传统工具依赖关键词搜索,难以应对语义模糊或命名不规范的场景。Apipost AI 智能搜索功能,支持自然语言查询,如“和用户登录有关的接口”,系统可理解语义并精准匹配目标接口。无论是新人上手、模糊查找还是批量定位,都能大幅提升检索效率,降低协作成本。从关键词到语义理解,智能搜索让开发者少花时间找接口,多专注核心开发,真正实现高效协作。
|
2月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
3月前
|
数据可视化 测试技术 API
从接口性能到稳定性:这些API调试工具,让你的开发过程事半功倍
在软件开发中,接口调试与测试对接口性能、稳定性、准确性及团队协作至关重要。随着开发节奏加快,传统方式已难满足需求,专业API工具成为首选。本文介绍了Apifox、Postman、YApi、SoapUI、JMeter、Swagger等主流工具,对比其功能与适用场景,并推荐Apifox作为集成度高、支持中文、可视化强的一体化解决方案,助力提升API开发与测试效率。