Server Actions i React 19 og Next.js
Forstå hvordan Server Actions kjøres på serveren, lukker over serverkontekst og returnerer data til klienten.
Server Actions i React 19 og Next.js er en gratis leksjon i React Academy på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i React Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i React Academy inneholder totalt 4 leksjoner.
Hva er Server Actions
Server Actions er asynkrone funksjoner som kjøres på serveren, ikke i nettleseren. De markeres med 'use server'-direktivet, plassert øverst i filen eller øverst i funksjonskroppen, som signaliserer til rammeverket at funksjonen aldri må kjøres på klientsiden.
Tilgang til serverkontekst
Fordi Server Actions kjøres på serveren, har de tilgang til hele serverkonteksten: databasetilkoblinger, miljøhemmeligheter, øktdata og filsystemressurser. Dette er grunnleggende forskjellig fra klientkomponenter, som bare har tilgang til det nettleseren eksponerer.
HTTP-transporten under panseret
Når en klientkomponent kaller en Server Action, oppretter Next.js automatisk en HTTP POST-forespørsel til et spesielt RSC-endepunkt. Rammeverket håndterer all serialisering av argumentene og transportlaget, så du trenger aldri å skrive fetch()-kall manuelt for disse mutasjonene.
Ingen API-rute er nødvendig
Server Actions erstatter behovet for API-ruter i mange scenarier som involverer mutasjoner. Selve Server Action-en er endepunktet — du definerer logikken én gang som en serverfunksjon og kaller den direkte fra klientkomponenten som om den var en lokal funksjon.
Førsteklasses funksjon i React 19
Server Actions var opprinnelig et Next.js-spesifikt konsept, men React 19 gjør dem til en førsteklasses React-funksjon. Det betyr at andre pakkebyggere og rammeverk enn Next.js kan implementere det samme mønsteret i henhold til React-spesifikasjonen.
Stabilitet og tilgjengelighet
Server Actions er eksperimentelle i React 19 RC, men har vært stabile i Next.js 14+ App Router siden de ble introdusert. Hvis du bygger en produksjonsapplikasjon med Next.js App Router i dag, er Server Actions et fullt støttet og anbefalt mønster.
Sikkerhet: Hemmeligheter forblir på serveren
En av de viktigste sikkerhetsegenskapene ved Server Actions er at hemmeligheter aldri når nettleseren. Miljøvariabler som databasepassord og API-nøkler brukt i en Server Action blir aldri inkludert i klientpakken, fordi funksjonskroppen aldri sendes til nettleseren.
Skjemaer og Server Actions
HTML-skjem elementer kan motta en Server Action direkte via action-attributtet: <form action={myServerAction}>. React fanger opp innsendingen og kaller Server Action-en med skjemadataene, slik at mutasjoner på serversiden blir mulig uten noe JavaScript-oppsett på klientsiden.
Forespørsels- og responsforløpet
Når en Server Action utløses, serialiserer React action-argumentene til en POST-forespørselskropp. Serveren deserialiserer dem, kjører funksjonen, serialiserer returverdien og sender den tilbake. Bare serialiserbare verdier (strenger, tall, arrayer og vanlige objekter) kan krysse grensen.
Definere en Server Action
Du kan definere en Server Action på modulnivå i en fil som har 'use server' øverst, eller innebygd i en Server Component ved å plassere 'use server' øverst i den asynkrone funksjonen. Begge fremgangsmåtene gir samme resultat: en funksjon som bare kan kalles på serveren.
Kalle fra klientkomponenter
Klientkomponenter importerer og kaller Server Actions på samme måte som vanlige asynkrone funksjoner. Kallsyntaksen er identisk med et lokalt kall til en asynkron funksjon, men kjøringen skjer utelukkende på serveren. Denne abstraksjonen holder klientkomponentene ryddige og fri for overflødig fetch-kode.
Spørsmål om sikkerhetsmodellen
Hvilket av følgende beskriver best sikkerhetsmodellen til Server Actions?
Oppsummering av leksjonen
Server Actions er asynkrone funksjoner på serversiden som er merket med 'use server'. De har tilgang til serverkontekst som databasetilkoblinger og miljøhemmeligheter. Next.js håndterer HTTP-transporten automatisk, og React 19 gjør dem til en rammeverksuavhengig funksjon. Skjemaer kan bruke dem direkte via action-attributtet, og hemmeligheter i dem når aldri nettleseren.
Lær deg React med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 88
- Leksjoner
- 324
Ofte stilte spørsmål
Er leksjonen «Server Actions i React 19 og Next.js» gratis?
Ja – hele teksten i «Server Actions i React 19 og Next.js» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av React Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i React Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Server Actions i React 19 og Next.js»?
Forstå hvordan Server Actions kjøres på serveren, lukker over serverkontekst og returnerer data til klienten. Du øver på React Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med React Academy?
Ingen tidligere erfaring er nødvendig. React Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Server Actions i React 19 og Next.js»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne React Academy-leksjonen?
Ja. Alle React Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Server Actions i React 19 og Next.js
- Skjemaactions: Erstatt API-ruter for mutasjoner
- useActionState og useFormStatus
- Progressiv forbedring med Server Actions