Principerna för Web API Användning

Inte för länge sedan skrev jag en artikel om "Den ökande betydelsen av API: er i webbutveckling." Som en uppföljning, idag täcker jag grunderna för att använda Web APIs.


Innan vi börjar: Denna artikel beskriver inte processen med API-design eller -utveckling. Det är för en annan artikel!


Grundläggande principer

Det finns en handfull grundläggande principer som bör följas när du använder Web API:

  • Bygg applikationer som är sociala och engagerande
  • Ge användarna val och kontroll när det är tillämpligt
  • Förundra inte, vilseleda eller förvirra användare
  • Skapa eller distribuera inte spam; uppmuntra alltid äkta kommunikation
  • Respektera användarens integritet
  • Var en bra partner till Web API-leverantörer

De flesta av dessa riktlinjer är listade i API-användarvillkoren för Twitter och Facebook, men kan tillämpas på alla Web APIs.


Utvärdera dina kodningsfärdigheter

Det finns tusentals Web APIs tillgängliga och de flesta kan antingen integreras i en webbplats eller skapa en mashup. Vissa Web API är ganska enkla och kräver minimal kodning färdigheter att genomföra, medan andra kan vara extremt komplexa och kräver avancerade programmeringsförmåga.

Programmeringsspråket du använder för att integrera ett webb-API till din webbplats beror säkert på vilka som du är mest bekväma med. Du kommer att upptäcka att många webb-API, som Flickr och Last.fm, erbjuder språkspecifika verktyg.


Läs Villkoren

Varje webb API har specifika villkor för användningen av det. så det är oerhört viktigt att "villkor och villkor" läses noggrant. De kommer att beskriva många aspekter av användningen av Web API, inklusive:

  • Upphovsrättsintrång
  • Logo Identitet, Branding & Varumärken
  • Innehåll Användning & Riktlinjer
  • Allmänna begränsningar
  • Användningsbegränsningar
  • Användning av cachefiler
  • Integritetspolicy

Det kan finnas ytterligare "användarvillkor" information som finns på separata webbsidor. Till exempel finns "Visningsriktlinjer" beskrivna i detalj på separata webbsidor för Twitter, Foursquare, LinkedIn och Facebook.


Läs dokumentationen

De flesta webb-API-er har en detaljerad dokumentation, som vanligtvis innehåller viktig information som:

  • Funktionslista
  • Tillgängliga dataformat
  • Hur man begär en API-nyckel
  • Så här använder du autentisering (OAuth)
  • Exempel på API-samtal och dataförfrågningar
  • Handledning och provkod
  • API-referenssida

Använd den senaste versionen / versionen

Vissa Web API-leverantörer rekommenderar att en versioneringsparameter används i API-samtalet.

Många leverantörer av webb-API släpper ofta nya versioner av deras API. Dessa nya utgåvor kan innehålla följande:

  • Lätt funktionalitet
  • Ökad hastighet
  • Förbättrad stabilitet
  • Förbättrad noggrannhet
  • Bug fixar

Vissa Web API-leverantörer rekommenderar att en versioneringsparameter används i API-samtalet. Foursquare till exempel accepterar parametern "v = YYYYMMDD" i API-samtal. Denna parameter hjälper till att ange att klienten är uppdaterad från och med det angivna datumet.


Kontrollera regelbundet Ändra logg

Det är en smart idé att regelbundet kontrollera ändringsloggen (om den finns) när du använder Web API. Många populära API-skivor har ändringsloggar tillgängliga, till exempel Facebook, Google Maps, Google Charts och Foursquare.

Gott om API-leverantörer erbjuder ytterligare sätt att hålla reda på deras API-revisioner:

  • Prenumerera på API-utvecklarbloggen
  • Följande API på Twitter
  • Ansluta till en API-användargrupp
  • Prenumerera på ett API-nyhetsbrev

Användningsgränser

Nästan alla webb APIer är föremål för taksgränser. vissa API-leverantörer tar även ut avgifter om en användare överstiger API-gränsgränsen!

Användning av de flesta (om inte alla) API: n är föremål för taksgränser och varje API-leverantör har sin egen API-räntesänkningspolicy. Vissa API-leverantörer tar även ut avgifter om en användare överstiger API-gränsgränsen! Google introducerade nyligen en ny kursbegränsningspolicy för Maps API som innehåller användaravgifter. Google har också lämnat ytterligare detaljer om användningsbegränsningarna för Maps API på deras Geo Developers Blog. Här är länkar för att betygsätta begränsande information för några av de mer populära API: erna:

  • Twitter
  • Facebook
  • Linkedin
  • Foursquare
  • Youtube

Det är oerhört viktigt att du inte missbruker API: n. Om du är webbplats gör ett API-samtal för varje enskild sidbelastning, och för varje enskild besökare, fråga dig själv "Varför"? Genomföra korrekt caching tekniker för att förbättra din webbplats prestanda, och potentiellt spara pengar.


Cachningsdata

Att använda en "cachefil" kommer att förhindra problem med begränsning av API-hastighet.

Att använda en "cachefil" kommer att förhindra problem med begränsning av API-hastighet. I Nettuts + posten "Hur man skapar en avancerad Twitter Widget", finns det instruktioner om hur man skapar ett PHP-cachefil. Detta skript hämtar Twitter API-filen "GET-status / user_timeline" och lagrar den i en "TXT" -fil som finns i en cachemagasin på servern. Detta skript kan enkelt ändras för att fungera med de flesta API: er. Allt du behöver göra är att ändra txt-filnamnet och API-samtalet. Observera att samtalet i skriptet hämtar data i JSON-format.

Det är viktigt att du läser API: erna "användarvillkor" för varje hänvisning till användning av cachefiler. Till exempel har Amazon Product Advertising API begränsningar för caching. Facebook rekommenderar att om du använder caching bör du försöka hålla data uppdaterad.


Dataformat

De två mest populära dataformaten för Web API är XML och JSON.

De två mest populära dataformaten för Web API är XML och JSON; många leverantörer erbjuder båda formaten. JSON har dock blivit så populärt bland webbutvecklare att vissa API-leverantörer, till exempel Foursquare, Twitter och Google+, erbjuder JSON-dataformatet uteslutande.

API-dataformat omfattas i detalj i ett tidigare inlägg.


Anmälan till API: n

De flesta API-leverantörer kräver att användare registrerar sig för ett användarkonto och / eller en API-nyckel. Google frågar till exempel att användarna begär en API-nyckel här. Detta är vanligtvis en ganska enkel process och bör bara ta några minuter att göra. Du kan också bli ombedd att använda ett utvecklar- / applikations-ID när du använder ett API.


OAuth Token

Många API: er kräver användning av OAuth för specifik API-funktionalitet.

OAuth (Open Authorization) är en öppen standard för behörighet som tillåter användare att dela data och / eller filer lagrade på en webbplats med en annan webbplats.

Många API: er kräver användning av OAuth för specifik API-funktionalitet, till exempel inloggning och utmatning av en applikation. Google+ API kräver ALL API-samtal att använda en OAuth 2.0-token eller en API-nyckel. Google rekommenderar att du använder OAuth 2.0 som godkännandeprotokoll för Google API. Andra exempel på API som kräver OAuth är LinkedIn, Twitter och Foursquare.


API-samtal

Ett API-samtal måste användas för att ditt webbplatsprogram ska kunna komma åt ett webb API. Beroende på vilken typ av program du skapar kan du behöva använda flera API-samtal. De flesta API kan användas med en mängd olika programmeringsspråk. Samtalet kan behöva ändras för olika programmeringsspråk. Till exempel i handledningen "Hur man skapar en avancerad Twitter Widget", skapas ett PHP-cachefil-skript med följande Twitter API-samtal:

 http://api.twitter.com/1/statuses/user_timeline/twitter_screen_name.json?count=3&include_rts=true&include_entities=true

Om du använder JavaScript eller jQuery istället för PHP måste samtalet ändras till:

 http://api.twitter.com/1/statuses/user_timeline/envatowebdev.json?count=3&include_rts=true&include_entities=true&callback=?

När du använder JavaScript eller jQuery, "& Callback =" måste inkluderas i API-samtalet, men om du använder PHP måste det tas bort eller data inte genereras i ett giltigt JSON-format.


Testa API-samtalet

Det finns flera API-testverktyg tillgängliga för att hjälpa dig att testa dina API-samtal:

  • Google Code Playground
  • Googles OAuth 2.0 Playground
  • Apigee Console
  • Twitter Console
  • LinkedIn JavaScript API Developer Console

Plattform Status

Om du har oväntade problem med ett API erbjuder vissa API-leverantörer som Foursquare och Twitter uppdateringar av statusuppdateringar på statusbloggar.

Facebook erbjuder ett bra "Live Status Tool" som innehåller:

  • Aktuell plattformsstatus
  • Utgåva historia
  • Genomsnittlig API-svarstidstabell
  • Felräkningstabell

Twitter har också en uppdaterad "API Status Page" som innehåller:

  • Kända heta problem
  • Nyligen stängda problem
  • leva Aktuell prestanda och tillgänglighet Status
  • Prestanda och tillgänglighetshistorik

Slutsats

Web APIs blir allt viktigare i webbutveckling, och deras popularitet och användning har ökat exponentiellt de senaste åren. Förhoppningsvis har den här artikeln beskrivit grunderna för att använda Web API. Om det finns ytterligare anteckningar som jag inte har medgett, var vänlig och nämna dem i kommentarerna.