Node.js & REST APIs
Az útvonal
- 110 percElőbb az erőforrásokat és a hibákat tervezd meg
URL-ek, státuszkódok és hibaformák, még az első handler megírása előtt eldöntve.
Itt szállsz fel - 110 percA kérés útja
Routing, middleware és validáció, és hogy melyik feladat hová tartozik.
- 110 percAdat, migrációk és tranzakciók
Sémaváltozások, amiket pénteken is lefuttathatsz, és az a tranzakcióhatár, ami megment.
- 110 percBeléptetés kézlegyintés nélkül
Session vagy token, hashelés, és azok a részek, amiket soha ne találj ki magad.
- 110 percAmikor hajnali kettőkor elromlik
Strukturált logok, metrikák, timeoutok, újrapróbálkozás és idempotencia.
- 110 percÉlesítés, és az utána következő első hét
Konfiguráció, health checkek, és hogy mit érdemes valóban figyelni.
Bepillantás a tanításba
Döntsd el a hiba formáját, még az első handler előtt.
// One shape for every failure, so a client needs one code path.
type ApiError = {
error: { code: string; message: string; field?: string };
};
// 409, not 400: the request was valid, the world disagreed.
if (await orders.exists(courseId, userId)) {
return json<ApiError>(
{ error: { code: "already_owned", message: "You already own this course." } },
{ status: 409 },
);
}
A státuszt abból válaszd, ami valóban történt, ne megszokásból. A 400 azt jelenti, hogy értelmetlent küldtél; a 409 azt, hogy értelmes dolgot küldtél, ami ütközik a valósággal.
Ki vezet
Dávid úgy magyaráz, ahogy egy jó kolléga a tábla előtt — nincs öncélú szakzsargon, és nincs semmi elrejtve az „ahogy látható” mögé.
Helykitöltő profil