Kmom04

  • Författare
  • Meddelande

kati18

sql-kodare

  • Inlägg: 52
  • Blev medlem: 24 aug 2018, 10:53

Kmom04

Inlägg30 sep 2019, 22:06

Hej!
Behöver hjälp att komma igång med kmom04. Har läst instruktionerna m m flera gånger men kommer inte vidare :? .

Är inne på att använda nodejs och express och att få tillgång till innehållet i filen items.json med hjälp av var obj = require("items.json") men vet inte om jag tänker rätt? Känns som fundamentala frågor men är vad är det jag missar? Vad är förresten innehållet i items.json? Ett namnlöst objekt med en property items vars värde är en array av objekt...? Hur hämta ut värden därifrån...?

Sedan förstår jag inte riktigt vad som menas med "Alla svar ska vara JSON? Känner inte att jag är särskilt bekant med JSON men jag kanske har missat något...

Tacksam för ledtrådar och hjälp så att jag kommer vidare med uppgiften.
Mvh Katja
Användarvisningsbild

Lew

dbwebb

  • Inlägg: 406
  • Blev medlem: 05 sep 2012, 13:42
  • Ort: Karlskrona

Re: Kmom04

Inlägg01 okt 2019, 07:54

Jadå, du är på rätt väg.

Innehållet i JSON filen är:
Kod: Markera allt
{
    "items": [
        {
            "id": 1,
            "name": "Hungarian Yellow Wax Hot",
            "type": "Chili",
            "color": ["Yellow", "Red"],
            "species": "Capsicum Annuum",
            "origin": "USA",
            "scoville": "1.500-15.000"
        },
        {
            "id": 2,
            "name": "Carolina Reaper",
            "type": "Chili",
            "color": ["Red"],
            "species": "Capsicum Chinense",
            "origin": "USA",
            "scoville": "1.400.000-2.200.000"

        },
        // osv
    ]
}


Det är ett objekt { }som innehåller en array [ ]. Arrayen i sin tur innehåller flera objekt { }.

I kurserna Databas och Webbapp jobbade ni mycket med både Express och JSON, kanske finns något att hämta därifrån?

Med "Alla svar ska vara i JSON" menas att det svaret som servern skickar tillbaka till klienten ska vara i JSON format.
When in doubt, use brute force.

kati18

sql-kodare

  • Inlägg: 52
  • Blev medlem: 24 aug 2018, 10:53

Re: Kmom04

Inlägg04 okt 2019, 00:20

Hej igen!
Håller fortfarande på för fullt med kmom04 i vlinux1 och har gjort filer i node.js för webbklienten som fungerar åtminstone lokalt på min Lenovo. När jag nu tittar vidare på nästa uppgift "Bash-script som testar serverns routes" blir jag dock väldigt undrande till om jag fortfarande inte har förstått hur kursmomentet ska utföras. Menar du att bash-skriptet ska kunna anropa funktionerna i node.js-filerna(hos mig router.get("/all", (req, res)... o s v) när all, names o s v skrivs som argument i bash(terminal-klienten) eller vad menas med att t ex argumentet all ska anropa din route /all?

Såg att du skrev att man ev kunde få hjälp att lösa kursmomentet genom att titta tillbaka på kurserna databas och webb-app. Dessvärre kunde jag av personliga skäl inte gå kursen webb-app och undrar nu om jag i och med har missat en hel del kunskap för att kunna lösa detta kursmoment...?

Har gjort en publish pure på det jag hitintills har gjort i node.js och skulle väldigt gärna vilja ha återkoppling på om jag har tänkt rätt och lagt upp det på ett bra sätt eller om jag är helt fel ute. Vill som sagt även veta hur det är tänkt att bash-skriptet ska "jobba".

Mvh Katja

http://www.student.bth.se/~kati18/dbweb ... m04/server
Användarvisningsbild

Lew

dbwebb

  • Inlägg: 406
  • Blev medlem: 05 sep 2012, 13:42
  • Ort: Karlskrona

Re: Kmom04

Inlägg04 okt 2019, 07:48

Hej,

Tanken med Bash-scriptet är att det ska kunna anropa din server och dess routes. Förslagsvis med hjälp av curl, tex:

Kod: Markera allt
#!/usr/bin/env bash

curl http://servername:port/all
curl http://servername:port/color/yellow
curl http://servername:port/names


Servern ska då svara med json som skicks tillbaka till klienten.

Bashscriptet ska styras med hjälp av inskickade kommandon, tex:

$ ./client.bash names ska anropa curl http://servername:port/names.

Jag laddade ner din server och kikade på koden. Jag tycker den ser väldigt bra ut, förutom routen /micke som inte riktigt hör hemma här.

När du har din server igång, kan du via terminalen testa olika curl-kommandon som du sedan lägger in i scriptet client.bash.
When in doubt, use brute force.

kati18

sql-kodare

  • Inlägg: 52
  • Blev medlem: 24 aug 2018, 10:53

Re: Kmom04

Inlägg04 okt 2019, 10:10

Tack, nu tror jag att jag förstår hur jag kan gå vidare för att lösa uppgiften och du har helt rätt /micke hör inte till uppgiften, han hör "bara" till mig :) .
/Katja

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 5 gäster