Instagram som API
Dagens andra föreläsning
Då var det äntligen dags att faktiskt börja gå igenom 3:e parts system. Vi börjar med det omåttligt populära Instagram.
Innehåll:
- Hur börjar man?
- Få tag i en user token och börja använda den
- Vem är Instagrams API till för?
- Hur får man använda det och för vem?
- Oauth2
- Hämta bilder och gå igenom responsen
Hur börjar man?
På ovanstående url finns Instagrams utvecklardokumentation och det är även där du registrerar dig. Du måste ha ett konto på Instagram för att kunna utveckla mot deras API.
Ni som inte redan har ett Instagram-konto registrerar ett nu medans ni andra aktiverar era developer-konton.
Steg 2
På ovanstående url finns Instagrams utvecklardokumentation och det är även där du registrerar dig. Du måste ha ett konto på Instagram för att kunna utveckla mot deras API.
Ni som inte redan har ett Instagram-konto registrerar ett nu medans ni andra aktiverar era developer-konton.
Steg 3
Nu är det dags att skapa eran första Client. Jag har döpt min till WIEG16. Ni måste fylla i lite grundläggande information och en Website URL som just nu kan vara valfri publik url.
Er client innehåller ett client id och en client secret som vi kommer att använda oss av när vi autentiserar oss.
Autentisering
Autentiseringsprocessen är ganska udda. Vi börjar med att besöka url:en
https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=code
Från den url:en får vi en kod.
Autentisering
Nu är det dags att skicka den koden tillsammans med lite annan data till https://api.instagram.com/oauth/access_token
Det gör vi via Postman.
Vem är det till för?
Det är ett ganska långt dokument men en av huvudpoängerna i det är att Instagram-applikationer skall göras för Instagrams användare.
Det här betyder alltså att olika typer av Instagram-gallerier och dylikt inte är tillåtna enligt deras egna policies. Detta är väldigt bra att känna till då det är en av de vanligaste förfrågningarna kopplade till Instagram.
Hur får man använda det?
En Instagram-applikation är alltså tänkt att vara byggd på ett sätt så att man interagerar med den via sitt Instagram-konto.
Det är därför autentiseringsprocessen ser ut som den gör. Ännu en gång, appen skall vara till för Instagram-användare och de skall vara medvetna om att det är en Instagram-app de interagerar med.
Bildgallerier och dylikt är alltså förbjudna.
Oauth2
Oauth2 är en industristandard som definierar ett autentiseringsprotokoll. Protokollet är utvecklat för ett specifikt scenario där en tredje part vill ha tillgång till känslig information från ett system.
Processen som utmålas är tänkt att ge ett säkert flöde för alla inblandade.
Oauth2 - Roller
Client - Trejde part som vill ha tillgång till information. När ni integrerar mot tex Instagram, Twitter och Facebook så är det ni som är client.
API "Resource server" - Servern som har faktisk tillgång till den känsliga informationen.
Authorization server - Servern som autentiserar en client. Kan vara samma server som API.
Resource owner - Den som faktiskt äger den lagrade informationen. Ett exempel är Instagramanvändare.
Oauth2 - Flöde
Flödet initieras av trejde part som först registrerar sig som en client i systemet. Som client får man tillgång till egna uppgifter i form av tex client id och en secret key. Dessa används sedan för autentisering.
En client ber sedan om en autentiserings-url från autentiseringsservern. Denna url presenteras för resursägaren som loggar in/autentiserar sig via denna url.
När resursägaren autentiserar sig får client tillbaka en kod som skickas till autentiseringsservern för att till slut få en access token.
Instagram som API
By marcusdalgren
Instagram som API
- 226