Sessions 5-7a: 955 tests, deployment ready
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
const axios = require('axios');
|
||||
|
||||
const MLB_API_BASE = 'https://statsapi.mlb.com/api/v1';
|
||||
const TIMEOUT = 10000;
|
||||
|
||||
async function getPlayerStats(playerId) {
|
||||
const { data } = await axios.get(`${MLB_API_BASE}/people/${playerId}/stats`, {
|
||||
params: {
|
||||
stats: 'season',
|
||||
group: 'hitting,pitching',
|
||||
season: new Date().getFullYear(),
|
||||
},
|
||||
timeout: TIMEOUT,
|
||||
});
|
||||
return data;
|
||||
}
|
||||
|
||||
async function getGameLog(playerId, season) {
|
||||
const yr = season || new Date().getFullYear();
|
||||
const { data } = await axios.get(`${MLB_API_BASE}/people/${playerId}/stats`, {
|
||||
params: {
|
||||
stats: 'gameLog',
|
||||
group: 'hitting,pitching',
|
||||
season: yr,
|
||||
},
|
||||
timeout: TIMEOUT,
|
||||
});
|
||||
return data;
|
||||
}
|
||||
|
||||
async function searchPlayer(name) {
|
||||
const { data } = await axios.get(`${MLB_API_BASE}/sports/1/players`, {
|
||||
params: {
|
||||
search: name,
|
||||
season: new Date().getFullYear(),
|
||||
},
|
||||
timeout: TIMEOUT,
|
||||
});
|
||||
return data;
|
||||
}
|
||||
|
||||
async function getTeamRoster(teamId) {
|
||||
const { data } = await axios.get(`${MLB_API_BASE}/teams/${teamId}/roster`, {
|
||||
params: {
|
||||
rosterType: 'active',
|
||||
},
|
||||
timeout: TIMEOUT,
|
||||
});
|
||||
return data;
|
||||
}
|
||||
|
||||
async function getTodaysGames() {
|
||||
const today = new Date().toISOString().slice(0, 10);
|
||||
const { data } = await axios.get(`${MLB_API_BASE}/schedule`, {
|
||||
params: {
|
||||
sportId: 1,
|
||||
date: today,
|
||||
},
|
||||
timeout: TIMEOUT,
|
||||
});
|
||||
return data;
|
||||
}
|
||||
|
||||
module.exports = { getPlayerStats, getGameLog, searchPlayer, getTeamRoster, getTodaysGames };
|
||||
Reference in New Issue
Block a user