首页 > 解决方案 > 如果您在后端使用它,您可以从 spring (Boot) 调用 rest api 吗?(使用调度程序)如果是这样,我应该使用休息模板吗?

问题描述

我正在做一个梦幻足球网站,前端有 ANGULAR,后端有 SPRING BOOT。每个星期二早上,我希望我的调度程序使用 NFL API 来检索分数,以便我可以更新数据库。我认为我不能使用带 Angular 的调度程序?是否在 Spring 中使用调度程序并让这个 API 调用正确的方法?另外,如果我进行 API 调用,我应该使用 Rest Template 吗?

谢谢你!

标签: angularspringrestspring-bootscheduler

解决方案


由于 Angular 是一个 javascript 框架,因此只有在有人在其浏览器中打开应用程序时,您的 Angular 代码才会运行。如果周二早上没有人打开浏览器,那么您将无法触发更新。此外,您不希望每个用户的浏览器都尝试执行相同的更新,您只想在服务器上提取此信息一次。

您可以使用 Spring 的 @Scheduled 注释来创建一个按您需要的任何计划运行的任务:

https://www.baeldung.com/spring-scheduled-tasks

在 Spring Boot 应用程序中安排任务的最佳方法是什么

在您的计划任务中,您可以使用 RestTemplate 或您喜欢的任何 http 客户端(Jersey、commons http-client)来调用 NFL API。


推荐阅读