# 🚧 Express - Om att skapa en webbserver med express

__ icon: 💬 author: krm created: 2021-02-18 image:
../../../Image/Slice/balloon-www.png status: alpha __

- [Inlämning](./examination.sv.html)

# 1. Hur olika delar i webbapplikation samverkar.

- WebAPI

# 2. Introduktion till express

- Webbserver
- [express](http://expressjs.com/)

# 3. Att göra en enkel webbserver

- Hello Internet
- 🔗 [fun-game](http://htsit.se/t)

# 4. Request och response med Express

- Enkel komunikation
- 🔗 [Request](https://expressjs.com/en/api.html#req)
- 🔗 [Response](https://expressjs.com/en/api.html#res)

# 5. Midelware, exempel med logging.

- Logging
- Error hantering
- 🔗 [Midelware](https://expressjs.com/en/guide/using-middleware.html)

# 6. Parametrar i URL:en

- Få data via parameters.
- I URL:n vig GET methoden:
- Du behöver inget midelware
- Parameterna är i ett object i _req.query_.
- I body:n via POST methoden och format "urlencode":
- Formatet är default om du använder html-format.
- Använd det inbyggda midelware express.urlencoded.
- Parameterna är i ett object i _req.body_.
- I body:n via POST methoden och format "json":
- Formatet används ofta när du skickar information från javascript.
- Använd det inbyggda midelware express.json.
- Parameterna är i ett object i _req.body_
- I body:n via POST methoden och format "multipart/form-data":
- Formatet används ofta när du skickar olika data såsom bilder.
- Du behöver installera en midelware som klarar detta. Se exemplet nedan.
- 🔗 [npm install multer](https://www.npmjs.com/package/multer)
- Parameterna är i ett object i _req.body_ om det är text.
- Annars om det är en fil är den i _req.file_.

# 7. Webbkakor

- Vill du ha en kaka?

# 8. Template

- Mall

# 9. Databas och webbserver integration

- Hur anropa en databas

# 10. Dokumentation och kvalitetssäkring av en webbsajt.

- lol

# 11. Guide till att börja skapa ett projekt

- 🔗
  [Skapa ett projekt för en webbserver från en mall](../t/create-project/create-a-project-for-webserver.sv.html)
- 🔗
  [Skapa en konfigueringsfil i json](../t/create-file/create-a-config-file-in-json.sv.html)
- 🏗️🔗
  [Alternativ: Skapa en konfigueringsfil i yaml](../t/create-file/create-a-config-file-in-yaml.sv.html)
- 🏗➕🔗
  [️Extra: Spara en konfigurations fil i ".config" mappen](../t/create-file/save-a-config-file-in-config-folder.sv.html)
- Uppgift: Gör så att du kan konfiguera vilken port som servern startas på.

# 12. Guide till statiskt resurser och html sida.

- 🔗 [Skapa en webbmapp](../t/web-server/web-map-for-static-content.sv.html)
- Guiden är för att skapa en test sida som går att kopiera.
- 🔗
  [Skapa en html sida från en mall](../t/web-development/create-a-web-page.sv.html)

# 13. Guide till statiskt resurser till dynamisk sidor och template

- Guiden nedna är för att lära dig hantera ett anrop.
- 🔗
  [Ge ett svar på ett http anrop](../t/web-server/respons-to-http-call.sv.html)
- När du gör guiden nedan tänkt då på din sajt du vill skapa.
- Anpassa index sidan utifrån det.
- 🔗
  [Använda mustash för att få dynamisak sidor](../t/web-server/using-mustasch-for-pages.sv.html)

# 14. Guide till att använda parametrar, kakor och formulär.

- Skaga en chattsida i webbappen genom att kopiera index.html till chatt.html.
- 🔗 [Skapa ett formulärl](../t/web-development/create-a-web-form.sv.html)
- 🔗
  [Få information från användare via ett fomulär](../t/web-server/get-information-from-user-through-a-form.sv.html)
- 🔗
  [Hantera information hos användare via kakor](../t/web-server/using-cookies-for-user-info.sv.html)

# 15. Guide till att använda databaser med express

- 🔗
  [Installera och koppla upp mot en databas](../t/web-server/install-and-connect-to-a-database.sv.html)
- 🔗 [Skapa en databas](../t/web-server/create-a-database-for-user.sv.html)
- 🔗
  [Skapa en tabell i en databas](../t/web-server/create-a-table-in-a-database.sv.html)

# 16. Guide till att visa information från databasen

- 🔗
  [Ansluta till en databas](https://htsit.se/t/web-server/conect-to-a-databse.html)
- 🔗
  [Spara data från ett formulär i en tabell](../t/web-server/store-data-from-a-form.sv.html)
- 🔗
  [Visa upp data från en databs i en lista](../t/web-server/show-information-from-a-database.sv.html)

# 17. Guide till att logga in på en sajt

- 🔗🕺
  [Skapa en databas för användare](../t/web-server/create-a-database-for-user.sv.html)
- 🔗 [Låt en användare logga in](../t/web-server/let-a-user-logg-in.sv.html)
- 🔗
  [Skapa en middelwer som bara tillåter inloggade personer](../t/web-server/middeleware-to-check-if-user-logged-in.sv.html)

# 18. Extra guider

- 🔗🏗️➕
  [Skicka json till klienten](../t/web-server/send-and-get-json-from-a-server.sv.html)
