REST API design eksamensoppgaver
Studer designprinsipper og beste praksis for REST API-er gjennom en serie spørsmål og svar.
Quiz(64 spørsmål)
1. Hva er hovedprinsippet bak REST API-design?
Begreper i dette studiesettet(64)
Grunnleggende prinsipper(16)
Hva er et REST API?
Et REST API er et programmeringsgrensesnitt som bruker HTTP-protokollen for å kommunisere. Det er basert på prinsippene om representasjon, tilstandsløshet og ressursidentifikasjon.
Definer tilstandsløshet.
Tilstandsløshet betyr at hver forespørsel fra klienten til serveren må inneholde all informasjon for å forstå forespørselen. Serveren lagrer ikke informasjon om klientens tilstand.
Sant eller usant: REST API-er bruker alltid POST-metoden.
Usant. REST API-er bruker flere HTTP-metoder inkludert GET, POST, PUT, DELETE avhengig av operasjonen som utføres.
Forklar ressursidentifikasjon.
Ressursidentifikasjon refererer til hvordan ressurser er unikt identifisert i et API, vanligvis gjennom URI-er. Hver ressurs har en egen URI.
Hva menes med representasjon?
Representasjon refererer til måten en ressurs presenteres for klienten, ofte i formater som JSON eller XML. Klienten kan be om ulike representasjoner av en ressurs.
Sammenlign PUT og PATCH.
PUT oppdaterer hele ressursen, mens PATCH kun oppdaterer bestemte felt. Eksempel: PUT sender hele objektet, PATCH sender kun endrede felt.
Fullfør setningen: REST API-er er...
... vanligvis designet for å være enkle og intuitive, med fokus på lesbarhet og standardisering av forespørsel/format.
Hva er en hyperlenke?
En hyperlenke i REST API-er refererer til referanser til andre ressurser i representasjonen av en ressurs, noe som tillater navigering mellom relaterte ressurser.
Definer sikkerhet i REST API-design.
Sikkerhet handler om tiltak for å beskytte API-et mot uautorisert tilgang og datatyveri, ofte ved hjelp av autentisering og autorisasjon.
Hva er HATEOAS?
HATEOAS står for Hypermedia As The Engine Of Application State. Det er et prinsipp der klienter interagerer med en API ved å navigere gjennom hyperlenker i responsene.
Sant eller usant: REST er en protokoll.
Usant. REST er et sett med prinsipper for design av nettverksbaserte systemer, ikke en spesifikk protokoll.
Hva er en API-gateway?
En API-gateway fungerer som en inngang for alle forespørslene til et REST API, og håndterer autentisering, rutehåndtering og lastbalansering.
Hva er cache i REST API?
Cache er lagring av tidligere svar for å redusere responstid og belastning på serveren. Det kan forbedre ytelsen til API-et.
Definer idempotens.
Idempotens refererer til egenskapen til en operasjon der flere samme forespørslene gir det samme resultatet som én forespørsel. For eksempel er GET og DELETE idempotente.
Hva er en statuskode?
Statuskoder er numeriske koder sendt av serveren som indikerer resultatet av en forespørsel, f.eks. 200 (OK), 404 (Ikke funnet) og 500 (Intern serverfeil).
Hva er de grunnleggende prinsippene for REST?
- Klient-server-arkitektur - Tilstandsløshet - Ressursbasert - Bruk av standardprotokoller - Representasjonsbasert kommunikasjon
HTTP-metoder og statuskoder(16)
Hva står HTTP for?
HTTP står for HyperText Transfer Protocol. Det er protokollen som brukes for å overføre data over internett.
Beskriv metoden GET.
GET brukes til å hente data fra en server. Det har ingen bivirkninger og skal være idempotent.
Hvilken statuskode signaliserer suksess?
Statuskode 200 signaliserer at forespørselen var vellykket og dataene er returnert.
Hva er forskjellen mellom POST og PUT?
POST brukes til å opprette nye ressurser, mens PUT oppdaterer eksisterende ressurser. Begge kan være ikke-idempotente.
Fyll ut: 404 betyr ...
... at ressursen ikke ble funnet på serveren.
Er statuskode 500 en klient- eller serverfeil?
Det er en serverfeil. Den indikerer at det oppstod et problem på serverens side.
Hva er hovedformålet med DELETE?
DELETE brukes til å slette en spesifisert ressurs fra serveren. Det skal være idempotent.
Beskriv metoden PATCH.
PATCH brukes for delvis oppdatering av en ressurs. Den kan oppdatere spesifikke felter uten å endre hele ressursen.
Hva er statuskode 201?
Statuskode 201 indikerer at en ressurs ble vellykket opprettet som et resultat av en POST-forespørsel.
Er 301 en midlertidig eller permanent omdirigering?
301 er en permanent omdirigering. Det betyr at ressursen har blitt flyttet permanent til en ny URI.
Hva skjer ved en 403-statuskode?
403 betyr at tilgang til ressursen er nektet. Klienten har ikke nødvendige rettigheter.
Hva brukes HEAD til?
HEAD brukes til å hente HTTP-hoder fra en ressurs uten å hente selve innholdet. Nyttig for sjekking av metadata.
Sammenlign 200 og 204 statuskoder.
200 betyr 'OK' og returnerer data. 204 betyr 'Ingen innhold' og returnerer ingen data, bare bekreftelse.
Hva indikerer 401 statuskode?
401 indikerer at autentisering er nødvendig for å få tilgang til ressursen. Klienten må logge inn.
Omdirigering av forespørsel 302 er ...
... en midlertidig omdirigering. Ressursen finnes midlertidig på en annen URI.
Beskriv metoden OPTIONS.
OPTIONS brukes til å spørre serveren hvilke HTTP-metoder som støttes for en gitt ressurs. Nyttig for CORS.
Ressurser og URI(16)
Hva er en ressurs i REST?
En ressurs er en representasjon av et objekt eller data som kan manipuleres via API-et. Eksempler inkluderer brukere, produkter og bestillinger.
Definer URI.
URI står for Uniform Resource Identifier. Den brukes til å identifisere ressurser på nettet, typisk i form av en URL.
Hvordan struktureres en URI?
En URI består av følgende deler: skjema, vert, port, sti, spørring, og fragment. Eksempel: https://example.com:443/resource?id=1#section.
Er URI-er case-sensitive?
Sant. URI-er er case-sensitive, så '/Resource' og '/resource' refererer til forskjellige ressurser.
Hva betyr 'RESTful'?
RESTful beskriver API-er som følger REST-prinsippene. Det inkluderer bruk av ressurser, stateless kommunikasjon og standard HTTP-metoder.
Fyll inn blank: En _______ i REST representerer en entitet.
ressurs
Sammenlign URI og URL.
URI er en overordnet term som inkluderer både URL og URN. URL spesifiserer hvor en ressurs finnes, mens URN identifiserer den uten å gi dens plassering.
Hva er en god praksis for URI-naming?
Bruk beskrivende ord, unngå spesialtegn, og bruk små bokstaver. Eksempel: /api/v1/brukere/123.
Hvordan bruker man versjonering i URI?
Versjonering kan implementeres ved å inkludere versjonsnummer i URI-en, for eksempel: /api/v1/ressurs.
Hva er en stateless ressurs?
En stateless ressurs lagrer ingen tilstand mellom forespørslene. Hver forespørsel må inneholde all nødvendig informasjon.
Er det mulig å ha hierarkiske URI-er?
Sant. Hierarkiske URI-er kan representere relasjoner mellom ressurser, som /api/v1/brukere/123/bestillinger.
Hvordan representeres relasjoner i URI?
Relasjoner kan representeres ved å inkludere nested ressurser i URI-en, for eksempel: /api/v1/produkter/456/kategorier.
Hva er forskjellen på GET og POST?
GET henter ressurser uten å endre dem, mens POST brukes til å opprette nye ressurser.
Nevn et eksempel på en RESTful URI.
/api/v1/produkter/123, hvor 'produkter' er ressurstypen, og '123' er identifikatoren.
Hvordan håndterer man feil i URI-kall?
Bruk statuskoder for å indikere feil. For eksempel, 404 for 'Ikke funnet' og 400 for 'Ugyldig forespørsel'.
Hva er 'resource representation'?
Det er måten en ressurs presenteres i en API-respons, vanligvis i form av JSON eller XML.
Sikkerhet og autentisering(16)
Hva er autentisering?
Prosessen med å bekrefte identiteten til en bruker eller system.
OAuth 2.0 vs. Basic Auth
OAuth 2.0 gir bedre sikkerhet og tilgangskontroll, mens Basic Auth er enklere, men mindre sikker.
Sann eller usann: HTTPS gir kryptering.
Sann. HTTPS krypterer data sendt mellom klient og server, og beskytter mot avlytting.
Hva er JWT?
JSON Web Token (JWT) er en kompakt og selvstendig måte å overføre informasjon mellom parter som en JSON-objekt.
Fyll inn det tomme feltet: API-nøkler brukes til å ____.
identifisere applikasjoner og begrense tilgang til API-er.
Tokenutløp effekt?
Reduserer risikoen for at stjålne tokens blir misbrukt ved å sette en utløpstid.
Hva er CSRF?
Cross-Site Request Forgery (CSRF) er en type angrep hvor en uautorisert handling utføres på vegne av en autentisert bruker.
To-faktor autentisering?
En sikkerhetsprosess der brukeren må gi to former for identifikasjon før tilgang gis.
Hva er CORS?
Cross-Origin Resource Sharing (CORS) er en sikkerhetsfunksjon som lar eller blokkerer forespørselen fra en annen opprinnelse.
Tiltak for å sikre API-er?
- Bruke HTTPS - Implementere autentisering - Rate limiting - Validering av input
Sann eller usann: Anonyme API-forespørsel er alltid sikre.
Usann. Anonymitet kan føre til misbruk og mangel på tilgangskontroll.
Hva er rate limiting?
En teknikk for å begrense antall forespørsel en bruker kan gjøre til et API over en bestemt tidsperiode.
Sikkerhetsprotokoller nevnt:
- HTTPS - OAuth 2.0 - OpenID Connect
Hva er input validering?
Prosessen med å kontrollere og sanitere brukerinndata for å forhindre angrep som SQL-injeksjon.
Sikker kommunikasjon med API-er?
Bruk av HTTPS for å kryptere data og beskytte mot angrep.
Hva er en sikkerhetsfeil 401?
401 Unauthorized indikerer at forespørselen mangler gyldig autentisering for ressursen.
Spørsmål i dette studiesettet(64)
1. Hva er hovedprinsippet bak REST API-design?
2. Hva står statuskode 204 for?
3. Hva beskriver en ressurs i en REST API?
4. Hva er hovedformålet med autentisering i API-er?
5. Hvilken av følgende HTTP-metoder er IKKE en del av REST?
6. Hvilken HTTP-metode brukes vanligvis for å oppdatere en eksisterende ressurs?
7. Hva står URI for?
8. Hvilket av følgende er en fordel med OAuth 2.0 sammenlignet med Basic Auth?
9. Hva beskriver ressursidentifikasjon i REST?
10. Hva skjer hvis en klient sender en forespørsel med statuskode 401?
11. Hvilken del av URI spesifiserer ressursens plassering?
12. Sann eller usann: HTTPS er en protokoll som sikrer dataoverføring mellom klient og server.
13. Hvilket av følgende beskriver tilstandsløshet best?
14. Hvilken metode brukes for å slette en ressurs?
15. Er URI-er case-sensitive?
16. Hvilken beskrivelse passer BEST for JWT?
17. Hva er en hyperlenke i sammenheng med REST API-er?
18. Hva indikerer statuskode 301?
19. Hva betyr det at et API er RESTful?
20. Fyll inn det tomme feltet: API-nøkler brukes til å ____.
21. Hvilken statuskode indikerer at ressursen ble funnet?
22. Hva brukes metoden OPTIONS til?
23. Hvilket av disse er IKKE en del av en URI?
24. Hva er en konsekvens av tokenutløp?
25. Hva betyr idempotens i REST API-sammenheng?
26. Hvilken HTTP-statuskode indikerer at serveren har forstått forespørselen, men nekter å oppfylle den?
27. Hvordan kan versjonering implementeres i en URI?
28. Hva er CSRF?
29. Hvilken av følgende er en egenskap ved HATEOAS?
30. Hva er forskjellen mellom 200 og 204?
31. Hva kjennetegner en stateless ressurs?
32. Hva beskriver best to-faktor autentisering?
33. Hva er hovedformålet med en API-gateway?
34. Hvilket av følgende er en ikke-idempotent metode?
35. Hvilken av følgende URI-er indikerer en hierarkisk struktur?
36. Hva er CORS?
37. Hvilket av følgende beskriver representasjon i REST?
38. Når er det hensiktsmessig å bruke HEAD-metoden?
39. Hvordan representeres relasjoner mellom ressurser i URI?
40. Hvilket av følgende er et tiltak for å sikre API-er?
41. Hva er en vanlig feil i REST API-design?
42. Hvilken statuskode brukes når en ressurs ikke finnes?
43. Hva er hovedforskjellen mellom GET og POST?
44. Sann eller usann: Anonyme API-forespørsel er alltid sikre.
45. Hvilken HTTP-metode brukes vanligvis for å hente data?
46. Hvilken HTTP-metode er mest passende for å legge til en ny ressurs?
47. Hvilket eksempel representerer en RESTful URI?
48. Hva er rate limiting?
49. Hva er en viktig sikkerhetspraksis for REST API-er?
50. Hva betyr en statuskode 500?
51. Hvordan bør man håndtere feil i URI-kall?
52. Hvilke sikkerhetsprotokoller er nevnt i forbindelse med API-sikkerhet?
53. Hva betyr representasjon i sammenheng med REST API-er?
54. Hvilken kode indikerer at en forespørsel er midlertidig omdirigert?
55. Hva beskriver 'resource representation'?
56. Hva er inputvalidering?
57. Hva er en vanlig årsak til dårlig API-ytelse?
58. Hvilken HTTP-metode er ment for delvis oppdatering av en ressurs?
59. Hvilken av følgende URI-er har en best praksis for naming?
60. Hva indikerer sikkerhetsfeil 401?
61. Hvilket av følgende beskriver best ressursbasert kommunikasjon i REST API-design?
62. Hvilken statuskode brukes for å indikere at ressursen er tilgjengelig, men klientsystemet må autentisere seg før tilgang kan gis?
63. Hvilket av følgende alternativ beskriver best hva en URI er?
64. Hvilket av følgende beskriver BEST Cross-Site Request Forgery (CSRF)?
Relaterte studiesett
Wiederholung: Browser lädt eine Seite
Wiederholung: HTML CSS JavaScript Rollen
JavaScript DOM and events notes
REST APIs and HTTP methods exam review
How a browser loads a page
HTML vs CSS vs JavaScript step by step
What a URL is
Test: Was eine URL ist
Lag ditt eget studiesett
Last opp en PDF, lim inn notatene dine, eller beskriv et tema – AI genererer flashkort, quizer og mer på sekunder.

