100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
Samenvatting Mobile Development (Node & Express - API) $6.47
Add to cart

Summary

Samenvatting Mobile Development (Node & Express - API)

 1 view  0 purchase
  • Course
  • Institution

In de samenvatting beschrijven we API's in Node en Express, de API's worden voorzien van een backend met een relationele of document database. We bespreken verder ook hoe we deze API's kunnen beveiligen met klassieke sessions en met behulp van JSON webtoken. Tenslotte behandelen we serverless en e...

[Show more]

Preview 4 out of 53  pages

  • January 6, 2024
  • 53
  • 2023/2024
  • Summary
avatar-seller
Mobile Development

Rest API’s
 REST
o Representational state transfer
 Een REST API is een architecturaal patroon voor web API’s
o Het is geen framework, programmeertaal, standaard of protocol
o Het kan dus geïmplementeerd worden in elke programmeertaal
o Er zijn verder ook geen limieten op de structuur van de teruggegeven data
 Deze kan als JSON, HTML, Plain Text, XML, … teruggegeven worden
 JSON is het populairste
 Omdat RESR geen echte standaard is, zijn de vereisten voor een REST API ook
niet sterk afgebakend
o Een REST API moet voldoen aan volgende vereisten
 Uniforme interface
 Alle API requests voor een resource
o een rij in een tabel
o een document in een document database
geven op dezelfde manier terug
o Dit wil zeggen dat de volledige API ofwel in JSON-
formaat ofwel in XML-formaat aangeboden kan
worden, maar geen mix van beiden
 Het gekozen formaat hoeft niet overeen te
komen met het formaat dat intern door de
server gebruikt wordt
 De resource die teruggegeven wordt door de API bevat alle
nodige informatie om de resources aan te passen of te
verwijderen
 Elke resource is uniek en kan met één URL geïdentificeerd
worden
 Hypermedia as the engine of application state
o HATEOAS

,  De resources moeten een overzicht geven van
welke andere resources er beschikbaar zijn aan de
hand van hyperlinks
 Net zoals bij een browser moet er een, bij een
correctie HATEAOS implementatie, slechts één URL
gekend zijn
 De andere kunnen bezocht worden door
“door te klikken” in het antwoord dat de
server geeft op een request voor de root-url
 Wordt echter weinig gebruikt in productie omdat de
meeste API’s bedoeld zijn voor programmeur en
RUD-operaties moten ondersteunen
 Omdat er op verschillende pagina’ in de
client-applicatie verschillende acties
ondersteund moeten worden en omdat deze
pagina’s rechtstreek bezocht kunnen worden
i.p.v. via de root pagina te gaan, moet de
applicatie de URL’s van de API sowieso
kennen
 Client-server met zwakke coupling
 De client en server moeten zo weinig mogelijk van elkaar
weten
o De client en de server kunnen onafhankelijk van
elkaar ontwikkeld worden en communiceren enkel via
HTTP(S)
 Statelessness
 Elk request van de client naar de server moet alle informatie
bevatten om het request correct af te handelen
 De server mag geen data bewaren over de state op de client,
er zijn dus geen server-side sessions
 Caching
 Waar mogelijk moeten resources gechached worden
 Elk antwoord op een request moet informatie bevatten die
aangeeft of een resource client-side gechached mag worden
of niet
 Layered system architecture
 Noch de client, nog de server mag er van uitgaan dat de
communicatie tussen de client en server rechtstreeks
gebeurd
o Deze communicatie kan eventueel via een derde partij
gaan



2

,  Deze architectuur maakt het mogelijk om, op elk moment,
een proxy of load balancer toe te voegen tussen de client en
de server




3

, Rest Requests
 Voor elke resource zijn CRUD-operaties beschikbaar en met elke CRUD-operatie
komt een HTTP-methode overeen
o CRUD-operaties
 HTTP-methode
 CREATE
o POST
 READ
o GET
 UPDATE
o PUT
 DELETE
o DELETE
 Elke request naar de API heeft vier onderdelen
o Operatie
 Een HTTP-methode
o Endpoint
 Het laatste deel van URL, voor onze API dus /api/*
o Parameters
 Data die door de API gebruikt wordt om het request af te handelen
o Header
 HTTP-headers die zaken zoals authentication data bevatten
 Afhankelijk van de methode worden er parameters toegevoegd in de body of
worden er een parameter toegevoegd in de URL
o Voor PUT en POST wordt body data gebruikt en voor GET, PUT en DELETE
een URL-parameter


Node & Express
 API’s bouwen via Node.js en met behulp van het Express framework
o Express is een minimalistisch webserver-framework voor Node
 Hiermee definiëren we dus e routes die via onze API beschikbaar
zijn




4

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying these notes from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller anouckcelis. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy these notes for $6.47. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

56326 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy study notes for 14 years now

Start selling
$6.47
  • (0)
Add to cart
Added