Backend-roadmap
Fra HTTP-grunnlag til sikre, veldokumenterte API-er — og hvordan n8n utfyller egen backend-kode.
Kjernetemaer
Servere
PågårHva: Programmer som lytter etter og svarer på forespørsler.
Hvorfor: Grunnenheten alt backend-arbeid bygger rundt.
Bør kunne: Forstå livssyklusen til en forespørsel fra mottak til svar.
HTTP-metoder
PågårHva: GET, POST, PUT, PATCH, DELETE og deres semantikk.
Hvorfor: Riktig bruk gjør API-er forutsigbare for alle som konsumerer dem.
Bør kunne: Velge riktig metode og statuskode for hver operasjon.
REST
PågårHva: Arkitekturstil for ressursorienterte API-er.
Hvorfor: Fortsatt den dominerende stilen for offentlige og interne API-er.
Bør kunne: Designe endepunkter rundt ressurser, ikke handlinger.
JSON
FerdigHva: Tekstbasert dataformat for utveksling mellom klient og server.
Hvorfor: Standardformatet for nesten alle moderne API-er.
Bør kunne: Designe konsistente JSON-strukturer for responser.
API-design
SenereHva: Beslutninger om navngiving, versjonering og struktur.
Hvorfor: Dårlig API-design koster tid for alle som bruker det senere, inkludert deg selv.
Bør kunne: Skrive API-er som er forutsigbare uten dokumentasjon i hånden.
Routing
SenereHva: Kobling mellom URL og handler-funksjon.
Hvorfor: Organiserer hvordan forespørsler når riktig logikk.
Bør kunne: Strukturere routes i moduler etter ressurs.
Middleware
SenereHva: Funksjoner som kjører før eller etter en handler, f.eks. logging og auth.
Hvorfor: Lar deg gjenbruke tverrgående logikk uten duplisering.
Bør kunne: Skrive egen middleware for autentisering og feilhåndtering.
Validering
SenereHva: Kontroll av at inndata har riktig form og innhold.
Hvorfor: Ugyldig data som slipper gjennom skaper feil lenger inn i systemet.
Bør kunne: Validere all inndata på serveren, uansett hva klienten gjør.
Autentisering
SenereHva: Bekrefte identiteten til den som gjør forespørselen.
Hvorfor: Forutsetning for alt som skal være beskyttet.
Bør kunne: Implementere innlogging med sikker passordhåndtering.
Autorisering
SenereHva: Bestemme hva en autentisert bruker har tilgang til.
Hvorfor: Skiller "hvem er du" fra "hva får du lov til".
Bør kunne: Bygge rollebasert eller ressursbasert tilgangskontroll.
Sessions
SenereHva: Serverbasert tilstand knyttet til en innlogget bruker.
Hvorfor: En av to hovedmåter å holde brukere innlogget på.
Bør kunne: Vite når sessions passer bedre enn tokens.
JWT
SenereHva: Signerte tokens som bærer brukerinformasjon uten serverlagring.
Hvorfor: Vanlig i APIer som skal være stateless eller brukes på tvers av tjenester.
Bør kunne: Forstå signering, utløp og hvor tokens bør lagres trygt.
Cookies
SenereHva: Liten data lagret i nettleseren og sendt automatisk med forespørsler.
Hvorfor: Brukes til sessions, preferanser og autentisering.
Bør kunne: Sette sikre, httpOnly-cookies riktig.
Logging
SenereHva: Strukturert registrering av hendelser i systemet.
Hvorfor: Eneste realistiske måte å forstå hva som skjedde i produksjon.
Bør kunne: Logge med riktig alvorlighetsgrad og uten sensitive data.
Feilhåndtering
SenereHva: Konsistente feilresponser og robust håndtering av unntak.
Hvorfor: En krasjet server er verre enn en tydelig feilmelding.
Bør kunne: Returnere strukturerte feil med riktig statuskode.
Testing
SenereHva: Automatiserte tester av endepunkter og logikk.
Hvorfor: Gir trygghet til å endre backend-kode uten frykt for regresjoner.
Bør kunne: Skrive integrasjonstester for de viktigste endepunktene.
Sikkerhet
SenereHva: Beskyttelse mot vanlige angrep som SQL-injeksjon og XSS.
Hvorfor: Backend håndterer ekte data og forretningslogikk.
Bør kunne: Kjenne OWASP Top 10 og hvordan de gjelder egne systemer.
Bakgrunnsjobber
SenereHva: Asynkront arbeid som kjører utenfor forespørsel-svar-syklusen.
Hvorfor: Noen oppgaver tar for lang tid til å holde en bruker ventende.
Bør kunne: Skille mellom det som må skje synkront og det som kan køes.
Webhooks
PågårHva: HTTP-kall utløst av hendelser i et annet system.
Hvorfor: Standard måte for systemer å varsle hverandre uten polling.
Bør kunne: Bygge og sikre egne webhook-mottakere.
Filopplasting
SenereHva: Håndtering av binærdata sendt fra klienten.
Hvorfor: Mange applikasjoner trenger å ta imot bilder, dokumenter eller kvitteringer.
Bør kunne: Validere filtype og størrelse før lagring.
API-dokumentasjon
SenereHva: Beskrivelse av endepunkter, f.eks. via OpenAPI/Swagger.
Hvorfor: Gjør API-et brukbart for andre uten å måtte lese kildekoden.
Bør kunne: Holde dokumentasjonen synkronisert med faktisk oppførsel.
Hvordan n8n passer inn
n8n dekker automatisering, integrasjoner og databehandling som ellers ville krevd egen backend-kode — nyttig å kunne utfylle, ikke erstatte, egne API-er.
Automatisering
PågårHva: Kjeder av triggere og handlinger uten manuell inngripen.
Hvorfor: Erstatter småskript og manuelle rutinearbeid med visuelle flows.
Bør kunne: Bygge flows som håndterer feilsituasjoner, ikke bare happy path.
Webhooks i n8n
PågårHva: Innkommende HTTP-triggere som starter en flow.
Hvorfor: Kobler eksterne systemer, som Telegram, direkte til automatisering.
Bør kunne: Sikre webhook-endepunkter og validere payload før videre steg.
Integrasjoner
PågårHva: Ferdige noder for tjenester som Google Sheets, Telegram og OpenAI.
Hvorfor: Reduserer behovet for å skrive egen integrasjonskode.
Bør kunne: Vite når en n8n-node er nok, og når egen kode gir mer kontroll.
Databehandling
PågårHva: Transformering av data mellom noder i en flow.
Hvorfor: Data fra én kilde passer sjelden formatet en annen tjeneste forventer.
Bør kunne: Bruke Function-noder til å rense og forme data.
GPT-kall
PågårHva: Bruk av språkmodeller til kategorisering og tekstforståelse.
Hvorfor: Automatiserer oppgaver som ellers ville krevd manuell tolkning.
Bør kunne: Skrive presise prompts og validere modellens output.
Google Sheets
PågårHva: Regneark brukt som enkel database for lister og oversikter.
Hvorfor: Rask å komme i gang med, god nok for lav trafikk.
Bør kunne: Vite når det er på tide å bytte til en ekte database.
Telegram
PågårHva: Meldingsplattform brukt som grensesnitt mot bruker.
Hvorfor: Lavterskel måte å samle inn data eller sende varsler på.
Bør kunne: Bygge boter som svarer tydelig ved både suksess og feil.