Ćwiczenia 13 - Tworzenie nowoczesnych aplikacji webowych
Table of Contents
Porady
JSON
Zmiana obiektu na napis
Zmianę obiektu na napis json-owy wykonujemy za pomocą funkcji
JSON.stringify:
const napis = JSON.stringify({a: "A", b: "B", c: "C"}) console.log(napis)
{"a":"A","b":"B","c":"C"}
Zmiana napisu na obiekt
Napis json-owy można zmienić ponownie na obiekt za pomocą
funkcji
JSON.parse
const obiekt = JSON.parse('{"a":"A","b":"B","c":"C"}'); console.log(obiekt["a"])
A
Pisanie do pliku
Zapis pliku można wykonać za pomocą fs.writeFileSync
const napis = "ABCDEFGH"; fs.writeFileSync("./db.json", napis)
Zapisywanie obiektu do pliku
Aby zapisać JSON-a do pliku, należy najpierw zmienić obiekt na napis, a następnie zapisać do pliku ten napis.
const obiekt = {a: "A", b: "B", c: "C"}; const napis = JSON.stringify(obiekt) fs.writeFileSync("./db.json", napis)
Edytowanie pliku JSON
Aby edytować plik JSON, należy go najpierw odczytać i sparsować, zmienić wartośc w odczytanym obiekcie, a następnie zapisać nowy obiekt
const napis_z_pliku = fs.readFileSync("./db.json"); const db = JSON.parse(napis_z_pliku); db["users"]["mariola"] = "hasło12123123"; const nowy_napis = JSON.stringify(db) fs.writeFileSync("./db.json", napis);
1. Baza danych w pliku (10pkt)
Rozszerz aplikację z Ćwiczeń 12 tak, aby informacje o użytkownikach
i hasłach były przechowywane w bazie danych w postaci pliku
db.json.
Proponowana struktura pliku db.json:
{
"users": {
"admin": "haslo123",
"user1": "hasło1",
"user2": "doniczka555",
"adam": "skoczek111"
}
}
- Formularz logowania powinien wyświetlać napis "zalogowano" tylko, gdy użytkownik poda taką parę login+hasło, jaka istnieje w bazie danych
-
Dodać formularz rejestracji, w którym użytkownik podaje login i
hasło. Po wciśnięciu przycisku "zarejestruj" pojawia się napis
"zarejestrowano" i wpisany login i hasło są zapisywane w pliku
db.json.