Skip to content

Latest commit

 

History

History
28 lines (14 loc) · 3.39 KB

README.md

File metadata and controls

28 lines (14 loc) · 3.39 KB

Razvoj na strežniku z uporabo Node.js

3. vaje pri predmetu Osnove informacijskih sistemov (navodila)

Spletna storitev FriBox

Na GitHub je na voljo javni repozitorij https://github.com/lovre/fribox, ki vsebuje nedelujočo spletno storitev FriBox. FriBox predstavlja napredno storitev za oblačno shranjevanje in deljenje datotek. Kot izvrstna spletna aplikacija posega na izjemno konkurenčno področje obstoječih tovrstnih rešitev. V okviru vaj ustvarite kopijo repozitorija ter popravite in dopolnite obstoječo implementacijo tako, da bo končna aplikacija z vsemi delujočimi funkcionalnostimi izgledala kot na sliki spodaj. Med delom smiselno uveljavljajte spremembe v lokalnem in oddaljenem repozitoriju!

FriBox

Navodila za vaje

  1. Na GitHub z uporabo funkcije Fork ustvarite lastno kopijo javnega repozitorija https://github.com/lovre/fribox v okviru katere boste opravljali vaje. V razvojnem okolju Cloud9 uvozite pravkar ustvarjen GitHub repozitorij z uporabo funkcije Clone to edit ter privzetimi nastavitvami.

  2. V JSON datoteki package.json aplikaciji dodelite odvisne knjižnice mime, formidable in fs-extra ter jih naložite z ukazom npm install. V Node.js aplikaciji FriBox.js popravite implementacijo tako, da le-ta zažene strežnik na privzetih vratih. Nato zaženite aplikacijo FriBox.js z ukazom node FriBox.js ter preverite osnovno delovanje.

  3. V JavaScript skripti skripta.js popravite implementacijo tako, da se pri nalaganju strani izvede funkcija pridobiSeznamDatotek(), ki pridobi seznam datotek iz strežnika. Popravite tudi samo implementacijo funkcije tako, da dejansko pošlje zahtevek za seznam datotek spletni storitvi /datoteke.

  4. V JavaScript skripti skripta.js popravite implementacijo tako, da bo izpis seznama datotek prilagojen velikosti posamezne datoteke. Izpis velikosti datotek naj bo v B v kolikor je velikost datoteke manjša od KiB, v KiB v kolikor je velikost datoteke manjša od MiB, v MiB v kolikor je velikost datoteke manjša od GiB itd.

  5. V Node.js aplikaciji FriBox.js popravite implementacijo tako, da se ob klicu spletne storitve /poglej odjemalcu posreduje datoteka z uporabo funkcije posredujeStaticnoVsebino(). Nato v JavaScript skripti skripta.js popravite implementacijo tako, da vsem datotekam dodate gumb Poglej, ki z uporabo spletne storitve /poglej izbrano datoteko prikaže v novem zavihku.

  6. Node.js aplikaciji FriBox.js dodajte implementaciji dveh funkcij za posredovanje HTTP napak 404 in 500. Funkciji uporabite na ustreznih mestih v aplikaciji, ki so označeni s komentarjem //Posreduj napako.

  7. V Node.js aplikaciji FriBox.js dodajte implemetacijo funkcije izbrisiDatoteko(), ki z uporabo funkcije fs.unlink() izbriše posredovano datoteko ter vrne ustrezen odgovor. Nato v JavaScript skripti skripta.js poiščite napako v implementaciji zaradi katere je moč izbrisati le prvo datoteko na strani. Popravite implementacijo tako, da bo moč izbrisati poljubno datoteko ter preverite delovanje.

  8. (za hrabre) V Node.js aplikaciji FriBox.js pri nalaganju datotek dodajte preverjanje ali datoteka z enakim imenom že obstaja. V tem primeru posredujte HTTP napako 409.