1ME323 Webbteknik 3 Lek0on 6 API. Rune Körnefors. Medieteknik. 2016 Rune Körnefors rune.kornefors@lnu.se



Relevanta dokument
1ME323 Webbteknik 3 Lektion 6 API. Rune Körnefors. Medieteknik Rune Körnefors

Introduk+on +ll programmering i JavaScript

Introduk+on +ll JavaScript if- sats, funk+oner, bilder

Lyhördhet Passion Ärlighet Kvalitet Entreprenörskap

TDP013. Webbprogrammering och interaktivitet. AJAX, CORS & jquery. Marcus Bendtsen Institutionen för Datavetenskap (IDA)

Axiell Arena. Samarbeta om bilder Regionbiblioteket i Kalmar län

ELEV- HANDLEDNING (Ansökan via webben)

Manual för Min sida 1/ rev

Ajax TruClient. Erfarenheter, tips och trix från Swedbank IT. Christian Gerdes Performance Engineer, LIGHTS IN LINE AB

Vis it. jquery jquery används lite överallt i appen på olika sätt. Det främsta användningsområdet är vid selektering och manipulering av HTML element.

Guide för att hitta markavvattningssamfälligheter och täckdikningsplaner

Administrera utskick på utbildningstillfälle

Labora&on 2 Funk&oner, if och loop övningar/uppgi:er

Efter att du har installerat ExyPlus Office med tillhörande kartpaket börjar du med att göra följande inställningar:

Dash and Dot. Svårighetsgraden bestämmer du själv genom att välja någon av av de 5 appar som är kopplade till Dash & Dot.

Objektsamlingar i Java

Instruktion för att hämta adresser via Navet

När geografisk information blir allas egendom

Laboration 2 RESTful webb-api

För dig som beviljar ärenden

30 Vanligt Ställda Frågor och Svar:

Individuellt Mjukvaruutvecklingsprojekt

Prova på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet

Lathund till Annonsportalen

E13 Behind the Wild. Dagens agenda. Cookies Context/ändra context Augmentation (förstärkning) Klassiskt arv Att låna metoder Namespaces Postludium

Vad är en webbläsare?

Arbeta bäst där du är Dialect Unified Mi

E12 "Evil is going on"

Design by. Manual Jossan.exe. Manual. till programmet. Jossan.exe. E-post:

Kom igång med RIB Karta 1

Avsändare och mottagare

E13 "Behind the Wild"

Webbtjänster med API er

Registrera betalning. Motsvarande vägledningar för vänstermeny hittar du längre ner i dokumentet

DATASAMORDNING NYHETERNA I CHAOS Utbildning Chaos/Handledning - Nyheterna i Chaos 3/

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det

JavaScript in SharePoint and not just for Apps. Wictor Wilén

JAVASCRIPT. Beteende

Övningar i JavaScript del 2

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion

Modul 8 Hantering av indata

Språk, datorer och textbehandling

Slutrapport för JMDB.COM. Johan Wibjer

Guide för Google Cloud Print

Raindanceportalen 2005, manual bokföringsorder Bokföringsportalen. Manual för samordnare. Utbildning Ekonomiadministrativa enheten

IdrottOnline Lathund för inmatning av Nyhet

Services + REST och OAuth

Koncept Katalog 2009

Guide till Wordpress text- och bildredskap

Webb-bidrag. Sök bidrag på webben Gäller från

Idag: Dataabstraktion

Q1 Hur många undervisningstillfällen har du haft under september månad?

Arbetsbeskrivning, att förbereda för studenternas registrering kommande termin. 1. Studenter antagna på fristående kurs 2

ANVÄNDARHANDLEDNING FÖR

SA33 - Val av kurser inom program m terminsreg

Information om nya kontaktvägar Lathund för Kundwebben

Ansökan om god man/förvaltare

Använda Esri Sveriges svenska baskartor i ArcGIS Online och ArcMap som administratör

ANVÄND NAVIGATIONEN I CAPITEX SÄLJSTÖD

PROGRAMMERING A VB6 UTVECKLINGSVERKTYGET VISUAL BASIC

Instruktioner för beställning och kontoadministration för abonnenter av inlästa läromedel

PBL om tidsbegränsade bygglov m.m

Riktlinjer - Rekryteringsprocesser inom Föreningen Ekonomerna skall vara genomtänkta och välplanerade i syfte att säkerhetsställa professionalism.

Tentamen i Programmering grundkurs och Programmering C

RDS5000PC hjälpmedel uppföljning

Telefonbetalning vid parkering

Business Check Betalmodul v1.00

E12 "Evil is going on"

Sundbybergs stad Skolundersökning 2015 Föräldrar förskola Fristående förskolor totalt Antal svar samtliga fristående förskolor: 360 (57 %)

FRÅN A TILL Ö LäraMera Ab / och Allemansdata Ab / FRÅN A TILL Ö

WEBBUTVECKLING Bilder

Att bekanta dig med NetBeans programmeringsmiljö och skriva några enkla program med programmeringsspråket Java.

Manual Gamla Akka-plattan

Utforska rymden med iphone

KOSMOS - Små och stora tal

e-cm Elektronisk Cash Management dygnet runt, världen över.

API:er/Mashup. Föreläsning 4 API:er och Mashups. Johan Leitet johan.leitet@lnu.se twitter.com/leitet facebook.com/leitet. Webbteknik II, 1DV449

Sundbybergs stad Skolundersökning 2015 Föräldrar förskola Stella Nova förskola

Visuell design Bilder & färger

Hur skapar man formula r

Drömplan för Uppföljningstillfällen: Mitt förslag är att avsätta 4 tillfällen under ett år för att följa upp din drömplan.

Rapport uppdrag. Advisory board

Programmering för språkteknologer II, HT2014. Rum

Objektbaserad programmering

myabilia En introduktion

Programmera LEGO NXT

Laboration 1 XML, XPath, XSLT och JSON

Dokumentation Optitec RS - Återkallning

Timeline dropbox för lärare och elever

Handledning Att arbeta med Webbplatser

Mötesnoteringar från PTS arbetsgruppmöte om 90-serien

Uppdrag: Huset. Fundera på: Vilka delar i ditt hus samverkar för att elen ska fungera?

Webservice tjänsten GetPerson Slagning mot befolkningsregister

Distribuerade system. CORBA eller RMI

912 Läsförståelse och matematik behöver man lära sig läsa matematik?

Översikt. Installation av EasyPHP 1. Ladda ner från Jag använder Release Installera EasyPHP.

Menys webbaserade kurser manual för kursdeltagare. Utbildningsplattform: Fronter

Användarmanual och policy för Göteborgs Evenemangskalender på goteborg.com

Manual fö r kursspecifika ansö kningsförmula r Fölkhö gsköla.nu

Välkommen till oss på Bildtelefoni.net!

Transkript:

1ME323 Webbteknik 3 Lek0on 6 API Rune Körnefors Medieteknik 1 2016 Rune Körnefors rune.kornefors@lnu.se

Agenda API (Applica@on Programming Interface) Mashup Flickr API Google Maps API Labb 6 2

API (Applica0on Programming Interface) metod & parametrar Program eller databas Opera@vsystem Program Webbtjänst... API egenskaper metoder data Program Program i datorn Webbprogram... 3

API på webben Webb- tjänst API Begär data genom av adressera metoder i url:en, t.ex. med hjälp av AJAX. Skickar över data på begärd form, t.ex. XML eller JSON. Webb- prog. t.ex. Flickr Google Maps IMDB Ibland specificeras en "callback- funk@on". REST (Representa@onal State Transfer) Kommunika@on via hvp (eller hvps) Oba används GET med parametrar i url:en, för av ange metod och specificera en begäran. hvp://www.webbtjänsten/api/?method=api_funk@on&par1=xyz 4

API- nyckel Registrera en nyckel hos webbtjänsten. Skicka med i anropet: hvp://www.webbtjänsten/api/?api_key=gt5yhus567bfdgttsdegtuth54vfed&method=api_funk@on&par1=xyz Sybe: Webbtjänsten vet vem som gör anrop. Kan begränsa användning eller ta betalt beroende på hur många anrop. API- nyckeln bör, om möjligt, ligga i en "lässkyddad" fil. 5

Mashup Webb- tjänst 1 API Webb- prog. Webb- tjänst 2 API NyV program som kombinerar data från två eller flera webbtjänster. 6

Flickr API Dokumenta@on hvps://www.flickr.com/services/api/ Anrop av olika metoder via hvps/api.flickr.com/services/rest/ Svar i olika format, t.ex. XML REST (Representa@onal State Transfer) JSON (JavaScript Object Nota@on) Exempel på anrop med resultat i XML: hvps://api.flickr.com/services/rest/?api_key=din- api- nyckel &method=flickr.photos.search&tags=cat&per_page=5&format=rest Exempel på anrop med resultat i JSON: hvps://api.flickr.com/services/rest/?api_key=din- api- nyckel &method=flickr.photos.search&tags=cat&per_page=5&format=json I dessa exempel är den tag som söks: cat 7

Callback func0on Svar som: jsonflickrapi( {JSON- objekt} ) JavaScript- kod: func@on jsonflickrapi(response) { if (response.stat!= "ok") { // Något har blivit fel return; } // Kod för av tolka och använda returnerad data } Annat namn på callback- funk@onen: hvps://api.flickr.com/services/rest/?api_key=din- api- nyckel &method=flickr.photos.search&tags=cats&per_page=5&format=json &jsoncallback=myfunc@on 8

Anrop med AJAX Skapa ev request- objekt och anropa flickr API: hvps://api.flickr.com/services/rest/?api_key=din- api- nyckel &method=flickr.photos.search&tags=cats&per_page=5&format=json &nojsoncallback=1 Funk@on som tar emot svaret specificeras i request- objektet: request.onreadystatechange = func@on () { if ( (request.readystate == 4) && (request.status == 200) ) getimages(request.responsetext); }; func@on getimages(response) { response = JSON.parse(response);... } 9

Exempel: Flickr API lekt6-ex1-1" Anrop i en script- tagg Callback- funk@on med data i JSON- format Sök fem bilder med specifik tag och visa upp bilderna på webbsidan. lekt6-ex1-2" Anrop med AJAX Data i JSON- format Sök 500 bilder med specifik tag och visa upp 5 slumpmässigt valda bilder på webbsidan. lekt6-ex2" Anrop med AJAX Data i JSON- format Sök fem bilder i taget. Ny sökning ger yverligare fem bilder. Bläddra framåt och bakåt mellan sökningarna. Visa små bilder samt stor bild, då man klickar på liten bild. 10

Google Maps API Dokumenta@on hvps://developers.google.com/maps/documenta@on/javascript/ Tutorial hvp://www.w3schools.com/googleapi/default.asp 11

Google Maps Objects Ladda in "hvps://maps.googleapis.com/maps/api/js" i en script- tagg. Om man gör en applika@on med mycket trafik, krävs en API- nyckel. Skapa objekt för karta, markörer, inforutor, etc. SäV olika egenskaper för objekten, t.ex. posi@on, tex@nnehåll,... 12

Exempel: Google Maps API lekt6-ex3-1" Skapa ev objekt för en karta (new google.maps.map) Visa en karta på universitetets campus. lekt6-ex3-2" Skapa ev objekt för en karta (new google.maps.map) samt objekt för markörer (new google.maps.marker) Markörerna kan visas och döljas på kartan. lekt6-ex3-3" Samma program som ovan, fast med lite mer kompakt och generell kod för markörerna. Karta med två markörer. lekt6-ex4-1" Skapa ev objekt för en inforuta (new google.maps.infowindow) Händelsehanterare för klick på markörerna. Inforuta visas i kartan. lekt6-ex4-2" Händelsehanterare för klick i kartan. Visa markör där användaren klickar i kartan. 13