DevOps consultant, expert în AWS, OpenStack, păpuși, ansiblu, programator Ruby și Du-te, CTO și fondator al mkdev.me.
În primul rând, voi adăuga posibilitatea de a te autentifica NIS + cereri GrooveHQ API. și apoi scrie codul minim necesar pentru o listă cu toate biletele. Din fericire, documentația API în serviciul detaliat și clar, astfel încât să o lucrare GET-solicitare nu va fi.
client subțire
Dacă vă puteți imagina cu greu o API este și de ce ai nevoie de ea, apoi o pauză de cinci minute și citiți articolul nostru despre acest subiect.
Voi începe prin a spune că voi scrie un mic GrooveHQ clasa :: Client. care va fi responsabil pentru efectuarea cererilor API. Constructorul va lua token-ul de acces.
Cum de a accesa API
Acum trebuie să dau seama cum să acceseze API-ul. Până în acel moment, nu am folosit httparty bijuterie pentru interogări. Experiența mea este limitată la bibliotecile RestClient și Faraday. Nu cred că există o mare diferență ce bibliotecă de a utiliza, dar pentru a face procesul mai interesant pentru a alege httparty. Mai ales că el a avut o mulțime de stele pe GitHub :)
De fapt, eu nu pot sta Faraday.
Am adăuga următoarea linie la groovehq.gemspec:
și de a efectua pachetul de instalare. Rămâne doar să se conecteze httparty în interiorul ./lib/groovehq.rb:
Facem prima solicitare către API
Verificați că totul funcționează așa cum ar trebui, să efectueze într-un dosar cu comanda hem pachet Exec IRB. Apoi, unul câte unul, efectuați următoarea bucată de cod:
Ca urmare, dacă utilizați token-ul de acces corect, va primi hash consola care arata ca acest lucru:
Se pare că avem o versiune minimă de lucru de hem! Commit modificările aici: f7d9eef.
nu mai mult de configurat pentru depanare #perform_request metodă, astfel încât acesta nu conține mai mult decât dreptul de a crea link-uri rânduri.
structura Adăugarea
După examinarea httparty de documentare. Am văzut această bijuterie vă permite să scrie clase simple și interesante, responsabile pentru efectuarea cererilor. Puteți specifica setări globale pentru fiecare cerere (uri de bază, antete, etc.), și fiecare metodă a clasei va fi responsabil pentru o anumită solicitare.
Rescrisă GrooveHQ :: client, astfel, arata (#perform_request metoda nu mai este necesară):
Acum trebuie să adăugați metode separate pentru fiecare puncte API. Pentru a evita orașul are zeci de metode din clasa GrooveHQ :: Client. O să le rup în module individuale, în cazul în care fiecare modul corespunde o anumită resursă.
În același mod este pus în aplicare în octokit hemului. unde am tras cu ochiul această abordare.
Adăugați dosarul lib / groovehq / client cu tickets.rb fișier:
Experimentul a arătat că, în IRB totul funcționează așa cum este necesar și primul hem API punct final înfășurat și gata de utilizare.
Ce urmează?
Următoarea mea sarcină este de a adăuga resurse cât mai mult posibil, ca urmare documentația API. Problemele pe care le-am venit peste, în procesul - în articolul următor.
Mai multe despre acest subiect
- Scrierea API bijuterie: Ce este hypermedia API și cum să facă prieteni
- PostgreSQL: De ce și cum
- O abilitate indispensabila: a se vedea busteni
În cele din urmă am decis să ne educe?
Apoi, începe cu ghidul nostru liber în lumea de dezvoltare web. În interiorul o grămadă de sfaturi și materiale pentru auto-studiu.
obține cartea