Υλοποίησε ένα RESTful API για την παρακολούθηση οφειλών.
Τέσσερις συγκάτοικοι έχουν τη συνήθεια να δανείζονται συχνά χρήματα ο ένας από τον άλλον και δυσκολεύονται να θυμούνται ποιος χρωστάει σε ποιον και πόσα.
Η αποστολή σου είναι να υλοποιήσεις ένα απλό RESTful API που δέχεται οφειλές ως αιτήματα POST και μπορεί να παρέχει συγκεκριμένες συνοπτικές πληροφορίες μέσω αιτημάτων GET.
{
"name": "Adam",
"owes": {
"Bob": 12.0,
"Chuck": 4.0,
"Dan": 9.5
},
"owed_by": {
"Bob": 6.5,
"Dan": 2.75
},
"balance": "<(total owed by other users) - (total owed to other users)>"
}
| Περιγραφή | Μέθοδος HTTP | URL | Μορφή payload | Απόκριση χωρίς payload | Απόκριση με payload |
|---|---|---|---|---|---|
| Λίστα πληροφοριών χρηστών | GET | /users | {"users":["Adam","Bob"]} |
{"users":<List of all User objects>} |
{"users":<List of User objects for <users> (sorted by name)} |
| Δημιουργία χρήστη | POST | /add | {"user":<name of new user (unique)>} |
N/A | <User object for new user> |
| Δημιουργία οφειλής | POST | /iou | {"lender":<name of lender>,"borrower":<name of borrower>,"amount":5.25} |
N/A | {"users":<updated User objects for <lender> and <borrower> (sorted by name)>} |
Υλοποίησε τις μεθόδους get και post της κλάσης RestAPI.
Θα πρέπει να γράψεις μόνο τις συναρτήσεις διαχείρισης, χωρίς να υλοποιήσεις έναν πραγματικό διακομιστή HTTP. Μπορείς να προσομοιώσεις τη βάση δεδομένων χρησιμοποιώντας ένα αντικείμενο στη μνήμη που θα περιέχει όλους τους αποθηκευμένους χρήστες. Ο κατασκευαστής της κλάσης RestAPI θα πρέπει να δέχεται ως όρισμα ένα στιγμιότυπο αυτής της βάσης δεδομένων (και να ορίζει μια προεπιλεγμένη τιμή γι' αυτό αν δεν έχει περαστεί όρισμα).
Για αυτή την υλοποίηση, σε περίπτωση ενός αιτήματος GET, το φορτίο θα πρέπει να αποτελεί μέρος του URL και να αντιμετωπίζεται σαν παραμέτρους ερωτήματος, για παράδειγμα /users?users=Adam,Bob.
Γράψου στο Exercism για να μάθεις και να κατακτήσεις JavaScript με 37 έννοιες159 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.