لقد سافرت مؤخرًا إلى لوس أنجلوس وقمت بورشة عمل GraphQL في Ticketmaster حيث قام الجميع ببناء JavaScript GraphQL API. تابع الجميع باستخدام Launchpad، وهي أداة تتيح لك تجربة خوادم GraphQL في متصفحك. لحسن الحظ، تم تسجيل ورشة العمل، لذا يمكنك تجربتها أيضًا!
إليك ما ستتعلمه:
يشير الفيديو إلى مستند Quip الذي قمت بإعداده، ولكن تم إعادة إنتاج كل هذا المحتوى هنا في ملف README هذا. آمل أن أعيد تسجيل نسخة من هذا أكثر ملاءمة لاستهلاك الإنترنت قريبًا، ولكن من يدري كم من الوقت سيستغرق قبل أن يكون لدي الوقت، لذلك فكرت في طرح هذا أولاً. المضي قدما ومشاهدته!
فيما يلي بعض الأشياء التي يتعين عليك القيام بها على الفور:
ومعرفات جذب Ticketmaster API الخاصة بهم:
K8vZ9171C-f
K8vZ9174v57
K8vZ9171CVV
هذا هو الاستعلام الذي نريد أن نتمكن من جلبه من واجهة برمجة تطبيقات GraphQL الجديدة:
{
myFavoriteArtists {
id ,
name
image
twitterUrl
events {
name
image
startDateTime
}
}
}
هذا مخطط يلبي الاستعلام أعلاه:
type Query {
myFavoriteArtists : [ Artist ]
}
type Artist {
id : ID
name : String
image : String
twitterUrl : String
events : [ Event ]
}
type Event {
name : String
image : String
startDateTime : String
}
انقر على هذه الروابط لرؤية واجهات برمجة التطبيقات النهائية في Launchpad:
هذه هي نقاط نهاية REST في Ticketmaster API التي نريد جلبها منها.
عناوين 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 } `
شفرة
// 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 ( ) )
تفاصيل المستندات من Ticketmaster API: http://developer.ticketmaster.com/products-and-docs/apis/discovery-api/v2/#attraction-details-v2
إذا كنت مهتمًا بالحصول على ورشة عمل GraphQL كهذه في شركتك، فلا تتردد في مراسلتي عبر البريد الإلكتروني على [email protected]
!