Recientemente volé a Los Ángeles e hice un taller de GraphQL en Ticketmaster donde todos crearon una API GraphQL de JavaScript. Todos siguieron usando Launchpad, una herramienta que le permite experimentar con servidores GraphQL en su navegador. Afortunadamente, el taller fue grabado, ¡así que tú también puedes probarlo!
Esto es lo que aprenderá:
El video hace referencia a un documento de Quip que preparé, pero todo ese contenido se reproduce aquí en este README. Espero volver a grabar pronto una versión de esto más optimizada para el consumo de Internet, pero quién sabe cuánto tiempo pasará antes de que tenga tiempo, así que pensé en publicar esto primero. ¡Adelante, míralo!
Aquí hay algunas cosas que deberá hacer de inmediato:
Y sus ID de atracción de la API de Ticketmaster:
K8vZ9171C-f
K8vZ9174v57
K8vZ9171CVV
Esta es la consulta que queremos poder obtener de nuestra nueva API GraphQL:
{
myFavoriteArtists {
id ,
name
image
twitterUrl
events {
name
image
startDateTime
}
}
}
Este es un esquema que cumplirá la consulta anterior:
type Query {
myFavoriteArtists : [ Artist ]
}
type Artist {
id : ID
name : String
image : String
twitterUrl : String
events : [ Event ]
}
type Event {
name : String
image : String
startDateTime : String
}
Haga clic en estos enlaces para ver las API terminadas en Launchpad:
Estos son los puntos finales REST en la API de Ticketmaster que queremos obtener.
URL
// Look up artist details
`https://app.ticketmaster.com/discovery/v2/attractions/ ${ id } .json?apikey= ${ context . secrets . TM_API_KEY } `
// Look up events for an artist
`https://app.ticketmaster.com/discovery/v2/events.json?size=10&apikey= ${ context . secrets . TM_API_KEY } &attractionId= ${ id } `
Código
// Artist details
return fetch ( `https://app.ticketmaster.com/discovery/v2/attractions/ ${ id } .json?apikey= ${ context . secrets . TM_API_KEY } ` )
. then ( res => res . json ( ) )
// Events
return fetch ( `https://app.ticketmaster.com/discovery/v2/events.json?size=10&apikey= ${ context . secrets . TM_API_KEY } &attractionId= ${ id } ` )
. then ( res => res . json ( ) )
Documentos detallados de la API de Ticketmaster: http://developer.ticketmaster.com/products-and-docs/apis/discovery-api/v2/#attraction-details-v2
Si está interesado en realizar un taller GraphQL como este en su empresa, ¡no dude en enviarme un correo electrónico a [email protected]
!