Estoy tratando de entender cómo hacer una solicitud POST a Yahoo! Fantasy Sports API de mi servidor Express, pero tengo problemas para entender cómo abordar esto dado que la documentación está escrita con PHP. Desarrollando localmente, puedo autenticar fácilmente al usuario y enviar todas las solicitudes GET que necesito usando el ingenioso cliente api yahoo-fantasy desarrollado por @whatadewitt.
He intentado lo siguiente en vano:
api en la clase principal del cliente api yahoo-fantasy que termina luciendo algo como esto en mi servidor Express: const response = await yf.api('POST', 'https://fantasysports.yahooapis.com/fantasy/v2/league/${league_key}/transactions', options);¿Alguien tiene alguna experiencia con el uso de NodeJS para acceder a Yahoo! ¿API de deportes de fantasía? Sé que esto es bastante específico, pero espero que alguien haya experimentado esto o algo similar y pueda sugerir algunos caminos potenciales a considerar.
¡Gracias!
[Editar en respuesta a Luke Poirrier, quien pidió ver un código de mi archivo express index.js]
No hay mucho que hacer en este momento. Más allá de requerir dependencias y pasar por el flujo oauth2.0, envío al usuario al punto final /oauth-complete , que luego comienza a realizar solicitudes GET para obtener información sobre su juego, liga, equipo, etc. una idea de donde estoy:
app.get('/oauth-complete', async (req, res) => { // DELETED CODE THAT SETS REFRESH TOKEN IF NEEDED try { const sport = 'nfl'; const { leagues } = (await yf.user.game_leagues(sport)).games[0]; const { league_key } = leagues[0][0]; const response = await yf.api('POST', `https://fantasysports.yahooapis.com/fantasy/v2/league/${league_key}/transactions`); console.log('response :>> ', response); } catch (err) { console.error(err); } });Y aquí está el mensaje de error que recibo en mi terminal:
{ 'xml:lang': 'en-us', 'yahoo:uri': '/fantasy/v2/league/406.l.1087313/transactions?format=json', description: 'unsupported content type . only application/xml supported', detail: '' }