动态 REST API 调用

2024-03-30

我已经成功访问​​页面上的静态API数据。我现在正在尝试访问 dynam API。我已经阅读了一些访问动态API的文档,但是API提供商的文档与在线资源不同。我不确定必须在现有代码中进行哪些更改才能访问动态 API 数据。这是来自 API 提供商的链接 -https://drive.google.com/file/d/0B2HH3TWuI4Fdc3RfNGVocy1pT0tuSXlLdHlPMUZSRG5GTWJV/view https://drive.google.com/file/d/0B2HH3TWuI4Fdc3RfNGVocy1pT0tuSXlLdHlPMUZSRG5GTWJV/view。我也很困惑contracts and getter, setter文档中提到。我应该如何以及在哪里使用它们?

这是我的访问代码Name, Line and MoneyLine来自静态 json API 的数据 -https://sportsbook.draftkings.com/api/odds/v1/leagues/3/offers/gamelines.json https://sportsbook.draftkings.com/api/odds/v1/leagues/3/offers/gamelines.json

我如何利用文档并访问实时 API 数据?

api.component.ts 代码

import {Component} from '@angular/core';
import {HttpClient} from '@angular/common/http'
import {forkJoin} from 'rxjs';
import {map} from 'rxjs/operators';

@Component({
  selector: 'app-mlb-api',
  templateUrl: './mlb-api.component.html',
  styleUrls: ['./mlb-api.component.css']
})
export class MlbApiComponent  {
//allhomeTeamName;
//allawayTeamName;
allline;
allOdds;
allName;
all: Array<{line: string, name: string,oddsAmerican:string}> = [];
firstLinePerGame: Array<string>;
oddsAmericans: Array<string>;

  constructor(private http: HttpClient) {}

  ngOnInit() {

    const character = this.http.get('https://sportsbook.draftkings.com/api/odds/v1/leagues/3/offers/gamelines.json').pipe(map((re: any) => re.events));
    const characterHomeworld = this.http.get('https://www.fantasylabs.com/api/sportevents/3/2019_06_17');

    this.firstLinePerGame = new Array<string>();
    //this.oddsAmericans = new Array<string>();

    forkJoin([character, characterHomeworld]).subscribe(([draftkingsResp, fantasylabsResp]) => {      

      //this.allhomeTeamName = draftkingsResp.map(r => r.homeTeamName);
      //this.allawayTeamName = draftkingsResp.map(r => r.awayTeamName);
      this.allName = draftkingsResp.map(r => r.name);
      this.allline = draftkingsResp.map(r=>r.offers).flat().map(r => r.outcomes).flat().map(o => o.line);
      this.allline = this.allline.filter(l => !!l);
      this.allOdds = draftkingsResp.map(r => r.offers).flat().map(r=>r.outcomes[0]).flat().map(o=>o.oddsAmerican);
      this.createAllArray();      


    });
  }

  createAllArray(): void {
    for (let i = 0; i < this.allline.length; i++) {
      let item = {
        line: this.allline[i],
        //awayTeam: this.allawayTeamName[i],
        //homeTeam: this.allhomeTeamName[i],
        name:this.allName[i],
        oddsAmerican: this.allOdds[i]
      }
      this.all.push(item);
    }
  }
}

api.component.html代码

<table class="table table-striped table-condensed table-hover">
  <thead>
      <tr>

        <!--   <th class="awayTeamName">awayTeamName&nbsp;<a ng-click="sort_by('awayTeamName')"><i class="icon-sort"></i></a></th>
          <th class="field3">homeTeam&nbsp;<a ng-click="sort_by('HomeTeam')"><i class="icon-sort"></i></a></th>
 -->           <th class="field3">Name&nbsp;<a ng-click="sort_by('Name')"><i class="icon-sort"></i></a></th>
            <th class="line">Line&nbsp;<a ng-click="sort_by('line')"><i class="icon-sort"></i></a></th>
             <th class="field3">Money Line&nbsp;<a ng-click="sort_by('oddsAmericans')"><i class="icon-sort"></i></a></th>
      </tr>
  </thead>

  <tbody>
    <ng-container *ngFor="let item of all| paginate: { itemsPerPage: 5, currentPage: p }; let i = index">
      <tr>
        <td>{{item.name }}</td>
<!--         <td>{{item.awayTeam}}</td>
        <td>{{item.homeTeam}} </td> -->
                <td>{{item.line }}</td>

        <td>{{item.oddsAmerican}}</td>

      </tr>
    </ng-container>
  </tbody>
</table> 


<pagination-controls (pageChange)="p = $event"></pagination-controls>

我已经根据您的要求更新了代码。我已经利用可观察量在链接中获取实时数据https://stackblitz.com/edit/stackoverflow-24-06-2019-ewzpst?file=src/app/app.component.html https://stackblitz.com/edit/stackoverflow-24-06-2019-ewzpst?file=src/app/app.component.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态 REST API 调用 的相关文章

  • Angular2 - 添加新的
  • 项目 onClick 事件
  • 我使用 ngFor 迭代数组以便在列表中显示它们 但我无法在列表中添加新项目 在 Onclick 事件期间我得到一个空的 li 也许我没有链接正确的东西 指令 或者是什么 也许我使用了错误的变量 我的导出类有我的构造函数 export cl
  • Angular 2 和使用 html 5 视频实例化相机流

    我是 Angular 2 的新手 如果我有一个视频标签 例如
  • 创建rest api url以连接mysql数据库

    我想学习如何创建一个rest api url 以便我可以使用该url获取信息并将信息发布到我的mysql数据库中 谷歌搜索了很多并阅读了各种文章 但没有找到任何精确的内容可以学习 所有内容均以 about api 开头 以已创建的其余 ur
  • 注入需要构造函数参数的服务

    我有一项服务需要启动一些值 Injectable export class MyService private myVals any constructor init any this myVals init 而消费者 Component
  • 在没有 OneDrive API 的情况下,无法在 Power BI 中使用 R 脚本在安全的 OneDrive 文件夹上写入 csv 文件

    我正在使用 R 在 Power BI 服务中编写一个脚本 该脚本会自动将特定数据集下载到 OneDrive 上的文件中 但是 我不断收到此错误 只能打开 URL 进行读取Error in file file ifelse append a
  • Angular2 本地组件/模板重用

    我正在编写一些 Angular2 模板 这些模板具有不同容器的重复部分 在这种情况下 如果对事物进行分组并且启用了多部分模式 则视图可能会发生变化 请原谅这个很长的例子 但是像这样
  • 获取 pdf 第 1 页(共 2 页)的图像

    我正在使用 html2canvas 和 jsPDF 以及 Angular4 创建图像 我想将此图像放置在 2 页生成的 pdf 的第 1 页上 但似乎这条线 doc save test pdf 需要在函数内部htm2canvas 因为如果我
  • 限制传出 PHP+curl 请求的速率

    有没有办法限制 有延迟 向外部服务器发出 PHP curl 请求的速率 以便每秒只有 n 个请求 PHP 在 Fastcgi 模式下使用 因此无法使用睡眠 是的 有curl 多重处理程序 您可以使用 OOP 方式以 OOP 方式完成此操作这
  • 用于检索名人信息的 API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • C++ API 设计和错误处理

    我需要使用 lib 文件 MSVC 编写 C API 它由 Dll 公开的几个导出的 C 类组成 从我的另一个问题的答案中我了解到 如果 C API 是在一个 VC 版本 假设是 2010 中构建的 并且客户端代码是在另一个 VC 版本中编
  • axios响应不显示数据

    我正在学习使用 Axios 但输出如图所示 当我使用 fetch 时 输出正常 我该如何修复 Axios const axios require axios default const url https jsonplaceholder t
  • ng run project:deploy - 项目目标不存在

    我有一个 Angular Web App 的工作生产版本 我的 Azure 帐户 免费套餐 上有一个有效订阅 其中包含 AppService 计划 应用服务 资源组 存储帐户 KeyVault SQL Server 和 SignalR 我想
  • JQuery / Flickr API 获取照片集的问题

    我一直在尝试构建一个通过 Flickr 管理的相册系统 过去一天左右我一直在使用 Flickr API 并编写了以下代码 但它只是没有返回预期的 HTML insetad 我在浏览器中收到上面一行的错误 images html theHtm
  • Chartjs + Angular6 未显示图表或任何错误

    我正在尝试以角度实现chart js 编写了一个简单的代码来在html上显示图表 但是页面上没有输出 也没有错误 我不明白问题出在哪里以及为什么显示图表失败 堆栈闪电战 https stackblitz com edit angularch
  • 带有 angular-cli 的 SVG 图标系统

    我有一个 Angular2 项目 它是通过 Angular CLI 创建的 在 webpack 中 有一个加载器来加载 svg sprite 并从 svgs 列表生成该 sprite 但是 当 angular cli 不允许我更改 webp
  • 如何对 AG-Grid 中标题名称为空的列进行排序

    如何对 AG Grid 中带有空标题的列进行排序 正在传递的 colDef var columnDefs headerName sortable true suppressToolPanel true field 笨蛋 https plnk
  • 使用许多嵌套的 switchMap 是不好的做法吗?

    我有 HTTP 拦截器 在该拦截器中 在更改请求之前 我需要打开一个加载程序 真正让我担心的是我最终会得到很多switchMaps why 加载器是异步的 我还需要将从拦截器传递的消息转换为加载器服务 翻译消息也是异步的 在拦截器中 我应该
  • 使用 HttpClient 而不是 Http,类型“Subscription”不可分配给类型“Observable”Angular 5

    我正在尝试使用新的 HttpClient 类而不是旧的 Http 我想映射从订阅方法获得的数据 但出现以下错误 关于为什么我得到这个有什么建议吗 Code export class YoutubeSearchService construc
  • 具有动态名称的 Angular Material 2 日期选择器

    我正在尝试实现具有动态名称的日期选择器组件 我正在使用 Angular 4 开发基于 Angular Material 2 的项目 这是我的实现
  • 在 TypeScript / Angular 4+ 中将 Enum 键显示为字符串

    export enum Type TYPE 1 Apple TYPE 2 Orange TYPE 3 Banana 当我登录时Type TYPE 1 toString默认情况下会调用方法 console log Type TYPE 1 is

随机推荐

  • 如何使用 Haskell Aeson 解析数组

    我有一个 JSON 文档 如下所示 series 1 2 2 3 3 4 我想将其解析为一组数据类型 data Series Series DataPoint data DataPoint DataPoint Int Int x and y
  • 为什么我的 MongoDB $or 查询不起作用?

    我正在尝试执行 or 搜索来匹配两个正则表达式 如下所示 metadata text or regex hello regex world 我正在使用 mlab com 并收到以下错误 MongoDB error Command faile
  • 使用twig变量动态调用导入的宏子函数

    我正在尝试是否使用变量来调用特定的宏名称 我有一个正在导入的宏文件 import form elements html twig as forms 现在该文件中包含所有表单元素宏 文本 文本区域 选择 单选等 我有一个传入的数组变量 其中包
  • Groovy 相对于 Jython 或 Jruby 的优势?

    当我可以使用 Jython 或 Jruby 时 为什么我要选择使用 Groovy 该语言是否提供了任何固有的优势来弥补 Jython 和 Jruby 技能适用于 JVM 之外的其父语言的事实 请记住 我故意保持这个问题的通用性 但如果特定领
  • 为什么灯光出现在对面?

    我正在尝试使用构建照明this https learnopengl com Lighting Basic Lighting教程 但是 灯光出现在人体物体的错误一侧 我不知道为什么 法线是按三角形创建的 三角形的顶点基本上具有相同的法线 gl
  • 如何让 Spring XD 在启动时部署一组预定义的流和 Tap

    有没有办法在启动 spring xd 的新实例时启动一组已定义的 steam 和 tap 场景是这样的 我们已经在开发系统上完成了一些原型设计 但现在我们想要构建并将其发布给测试团队 我们希望自动化大部分后台工作 用户只需担心流的输出 而不
  • 为具有特定标题的通用狮身人面像警告定义标记

    我正在使用 Sphinx 为 Python 程序生成 HTML 文档 我想使用generic admonition http docutils sourceforge net docs ref rst directives html gen
  • 简单会员资格:用户上次登录日期

    我在我的 asp net MVC 4 应用程序中使用简单成员资格 我如何获取用户的上次登录日期 我没有看到默认网页架构表中创建的日期 我是否需要在简单会员资格中创建 LastLogin 日期字段 谢谢 我已经这样解决了 我在 UsersCo
  • 使用 Lottie 自定义 UIRefreshControl

    我的目标是替换默认的微调器UIRefreshControl与洛蒂动画 我的问题是 当我拉下动画时 动画不会立即播放UICollectionView其子视图是UIRefreshControl 仅当我稍微向下滚动并暂停手指时才会播放动画 当我再
  • 通配符子域不适用于实时服务器上的静态子域

    我通过创建子域将项目部署在实时服务器上app example net在c面板上 并将我的项目放入app example net文件夹 在我的项目中 我有两个路线组 如下所示 路线 php
  • 如何将 SQL Server 错误日志文件移动到新位置?

    我的 C 盘上的默认 SQL Server 日志目录已满 如何移动SQL Server错误日志默认目录 Use the SQL Configuration Manager 以下是更改启动以使用不同目录的步骤 完成后重新启动服务器
  • 如何使用 html 和 css 创建一个小颜色框?

    我在 html 文件 网站上有一张图片 我想添加该图片的可用颜色列表 我想创建非常小的盒子或点 一个适合每种颜色的小盒子 我怎样才能做到这一点 Thanks 对于旧的浏览器 您经常会使用float https developer mozil
  • 适用于所有模板的 Django Python base.html

    在我的根目录中 我有一个模板 在该模板内后面跟着一个base html这将是我的自定义管理网站的主要布局 In my templates admin base html我有这个代码 block content endblock 我要这个ba
  • 如何在 http 响应正文中返回编码字符串?

    将编码字符串添加到 http 响应似乎会用 F MISSING 替换某些字符 如何防止这种情况发生 Output encodedText M6c8RqL61nMFy F 缺失 hQmciSYrh9ZXgVFVjO Code package
  • 在方法调用中传递“this”是java中可接受的做法

    在方法调用中传递当前对象是好 坏 可接受的做法 如 public class Bar public Bar public void foo Baz baz modify some values of baz public class Baz
  • 如何使用 CLI 在 Windows 操作系统中将 Node.js 6.x 更新到 8.x

    我无法在 Node js 6 x 上运行 Angular 6 CLI 它显示错误 升级最低 Node js 8 xx 以使用 Angular CLI 我尝试使用以下代码 npm install g npm windows upgrade n
  • Java 编译器:停止抱怨死代码

    出于测试目的 我经常开始在现有项目中输入一些代码 因此 我想要测试的代码位于所有其他代码之前 如下所示 public static void main String args char a System out println int a
  • C++ 变量定义中的“class”关键字

    在有人问之前 是的 这是家庭作业的一部分 是的 在问之前我做了很多谷歌搜索 我花了最后一个小时在谷歌上用很多很多不同的关键词进行了集中搜索 但就是找不到任何东西 那么问题来了 下面的变量定义是什么意思 class MyClass myCla
  • 为什么错误回溯显示编辑后的脚本而不是实际运行的脚本?

    背景 考虑以下最小示例 当我保存以下脚本并从终端运行它时 import time time sleep 5 raise Exception 该代码将在休眠五秒后引发错误 并留下以下回溯 回溯 最近一次调用最后一次 文件 test minim
  • 动态 REST API 调用

    我已经成功访问 页面上的静态API数据 我现在正在尝试访问 dynam API 我已经阅读了一些访问动态API的文档 但是API提供商的文档与在线资源不同 我不确定必须在现有代码中进行哪些更改才能访问动态 API 数据 这是来自 API 提