最先/最后进球指数 api接口示例

2019-12-03 admin

分享下足球特殊指数数据,最先/最后进球赔率api接口示例,详情查看在线文档 接口返回的是Json数据,可以使用fastjson来解析。

package com.huaying.demo.shenlu;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.annotation.JSONField;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List;

public class GoalOrderOdds {
    public static void main(String[] args) {
        try {
            String content = getContent();
            Respond rsp = new Respond();
            rsp.setOdds(JSONArray.parseArray(content, Odds.class));
            rsp.getOdds().forEach(System.out::println);

        } catch (Throwable t) {
            t.printStackTrace();
        }
    }

    /**
     * 获取API返回内容
     */
    private static String getContent() {

        // 设置接口参数
        String type = "6002";              // 赔率类型,4 位数字编号,最先/最后进球赔率为6002
        String token = "myToken";          // 通信令牌,【替换为分配给自己的token】
        String format = "json";            // 返回格式,默认为json

        String url = "http://api.shenlu88.com/data/lottery/result/list";
        url += "?type=" + type;
        url += "&token=" + token;
        url += "&format=" + format;

        // 调用神鹿数据 API 获取格式为 JSON 字符串的赔率结果
        String charset = "UTF-8";
        String jsonResult = get(url, charset);

        return jsonResult;
    }

    /**
     * @param url:请求接口
     * @param charset:字符编码
     * @return 返回json字符串
     */
    public static String get(String url, String charset) {
        BufferedReader reader = null;
        String result = null;
        StringBuffer sbf = new StringBuffer();
        String userAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";
        try {
            URL newUrl = new URL(url);
            HttpURLConnection connection = (HttpURLConnection) newUrl.openConnection();
            connection.setRequestMethod("GET");
            connection.setReadTimeout(30000);
            connection.setConnectTimeout(30000);
            connection.setRequestProperty("User-agent", userAgent);
            connection.connect();
            InputStream is = connection.getInputStream();
            reader = new BufferedReader(new InputStreamReader(is, charset));
            String strRead = null;
            while ((strRead = reader.readLine()) != null) {
                sbf.append(strRead);
                sbf.append("\r\n");
            }
            reader.close();
            result = sbf.toString();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return result;
    }

    public static class Respond {

        @JSONField
        private List<Odds> odds;

        public List<Odds> getOdds() {
            return odds;
        }

        public void setOdds(List<Odds> odds) {
            this.odds = odds;
        }
    }

    public static class OddsItems {
        @JSONField(name = "first_is_home_ratio")
        private String firstIsHomeRatio;
        @JSONField(name = "first_is_away_ratio")
        private String firstIsAwayRatio;
        @JSONField(name = "last_is_home_ratio")
        private String lastIsHomeRatio;
        @JSONField(name = "last_is_away_ratio")
        private String lastIsAwayRatio;
        @JSONField(name = "no_goal_ratio")
        private String noGoalRatio;

        public String getFirstIsHomeRatio() {
            return firstIsHomeRatio;
        }

        public void setFirstIsHomeRatio(String firstIsHomeRatio) {
            this.firstIsHomeRatio = firstIsHomeRatio;
        }

        public String getFirstIsAwayRatio() {
            return firstIsAwayRatio;
        }

        public void setFirstIsAwayRatio(String firstIsAwayRatio) {
            this.firstIsAwayRatio = firstIsAwayRatio;
        }

        public String getLastIsHomeRatio() {
            return lastIsHomeRatio;
        }

        public void setLastIsHomeRatio(String lastIsHomeRatio) {
            this.lastIsHomeRatio = lastIsHomeRatio;
        }

        public String getLastIsAwayRatio() {
            return lastIsAwayRatio;
        }

        public void setLastIsAwayRatio(String lastIsAwayRatio) {
            this.lastIsAwayRatio = lastIsAwayRatio;
        }

        public String getNoGoalRatio() {
            return noGoalRatio;
        }

        public void setNoGoalRatio(String noGoalRatio) {
            this.noGoalRatio = noGoalRatio;
        }

        @Override
        public String toString() {
            return "{" +
                    "firstIsHomeRatio='" + firstIsHomeRatio + '\'' +
                    ", firstIsAwayRatio=" + firstIsAwayRatio +
                    ", lastIsHomeRatio=" + lastIsHomeRatio +
                    ", lastIsAwayRatio=" + lastIsAwayRatio +
                    ", noGoalRatio=" + noGoalRatio +
                    '}';
        }
    }

    public static class Odds {
        @JSONField(name = "match_id")
        private String matchId;
        @JSONField(name = "company_id")
        private String companyId;
        @JSONField(name = "odds")
        private List<OddsItems> odds;
        @JSONField(name = "modify_time")
        private String modifyTime;

        public String getMatchId() {
            return matchId;
        }

        public void setMatchId(String matchId) {
            this.matchId = matchId;
        }

        public String getCompanyId() {
            return companyId;
        }

        public void setCompanyId(String companyId) {
            this.companyId = companyId;
        }

        public List<OddsItems> getOdds() {
            return odds;
        }

        public void setOdds(List<OddsItems> odds) {
            this.odds = odds;
        }

        public String getModifyTime() {
            return modifyTime;
        }

        public void setModifyTime(String modifyTime) {
            this.modifyTime = modifyTime;
        }

        @Override
        public String toString() {
            return "Odds{" +
                    "matchId=" + matchId +
                    ", companyId=" + companyId +
                    ", odds=" + odds +
                    ", modifyTime=" + modifyTime +
                    '}';
        }
    }
}

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

Odds{matchId=281243716, companyId=133, odds=[{firstIsHomeRatio='1.9', firstIsAwayRatio=1.85, lastIsHomeRatio=1.9, lastIsAwayRatio=1.85, noGoalRatio=18.5}], modifyTime=1571591064}
Odds{matchId=397712714, companyId=133, odds=[{firstIsHomeRatio='1.99', firstIsAwayRatio=1.84, lastIsHomeRatio=1.99, lastIsAwayRatio=1.84, noGoalRatio=13.5}], modifyTime=1571573896}
Odds{matchId=241243712, companyId=133, odds=[{firstIsHomeRatio='2.22', firstIsAwayRatio=1.63, lastIsHomeRatio=2.22, lastIsAwayRatio=1.63, noGoalRatio=17.5}], modifyTime=1571596475}
Odds{matchId=376436714, companyId=133, odds=[{firstIsHomeRatio='1.86', firstIsAwayRatio=2.02, lastIsHomeRatio=1.86, lastIsAwayRatio=2.02, noGoalRatio=11.5}], modifyTime=1570102937}
Odds{matchId=376436714, companyId=111, odds=[{firstIsHomeRatio='1.88', firstIsAwayRatio=1.94, lastIsHomeRatio=0, lastIsAwayRatio=0, noGoalRatio=13}], modifyTime=1569850871}

[转载]原文链接:https://segmentfault.com/a/1190000021181864

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处。

转载请注明:文章转载自 JavaScript中文网 [https://www.javascriptcn.com]

本文地址:https://www.javascriptcn.com/read-80353.html

文章标题:最先/最后进球指数 api接口示例

相关文章
bootstrap——bootstrapTable实现隐藏列的示例
最近在学习bootstrap,正好今天看到了bootstrapTable隐藏列,留着以后参考。 主要代码: &lt;script type=&quot;text&#x2F;javascript&quot;&gt; $(functi...
2017-03-09
最简单的JavaScript图片轮播代码(两种方法)
通过改变每个图片的opacity属性: 素材图片: 代码一: &lt;!DOCTYPE html&gt; &lt;html lang=&quot;en&quot;&gt; &lt;head&gt; &lt;meta cha...
2017-03-21
CIO最为关注的六大企业移动应用平台
2014年10月18日,由北大信息化与管理研究中心、北大CIO班教务办、大华南IT高管共赢圈联合主办,CIO时代网承办的2014“北大CIO中国行-深圳站”活动顺利举行。会上,来自各大企业的CIO、移动应用专家等140余人共聚一堂,共同探讨...
2015-11-12
JS实现的验证身份证及获取地区功能示例
本文实例讲述了JS实现的验证身份证及获取地区功能。分享给大家供大家参考,具体如下: 这里的代码可以用来验证身份证号,并且根据身份证号来判断是哪个省份及性别 代码示例: &lt;head &gt; &lt;title&gt;&lt;&#x...
2017-03-08
基于Marquee.js插件实现的跑马灯效果示例
本文实例讲述了基于Marquee.js插件实现的跑马灯效果。分享给大家供大家参考,具体如下: 1、Marquee.js文件 &#x2F;****************************************************...
2017-02-17
JavaScript获取本周周一,周末及获取任意时间的周一周末功能示例
本文实例讲述了JS获取本周周一,周末及获取任意时间的周一周末功能。分享给大家供大家参考,具体如下: 项目需要获取本周及任意一天的周一及周末 需格式化,示例代码如下: &lt;!DOCTYPE html PUBLIC &quot;-&#x2F...
2017-03-17
bootstrap实现的自适应页面简单应用示例
本文实例讲述了bootstrap实现的自适应页面简单应用。分享给大家供大家参考,具体如下: &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset=&#x27;u...
2017-03-14
angular.js 路由及页面传参示例
页面传参数方法:1、$rootScope。2、(url)/user/:name/:age。 页面转换方法:1、href=&quot;#/&quot; rel=“external nofollow” rel=“external nofollo...
2017-03-15
JavaScript打开摄像头并截图上传示例
直入正题,JS打开摄像头并截图上传至后端的一个完整步骤 1. 打开摄像头主要用到getUserMedia方法,然后将获取到的媒体流置入video标签 2. 截取图片主要用到canvas绘图,使用drawImage方法将video的内容绘至c...
2017-03-17
nodejs的压缩文件模块archiver用法示例
本文实例讲述了nodejs的压缩文件模块archiver用法。分享给大家供大家参考,具体如下: 发现了个更好用的 zip-local https://www.npmjs.com/package/zip-local var zipper = ...
2017-03-06
回到顶部