API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) · leksjon

Oppsett av et grunnleggende gateway-prosjekt

Initialiser et Spring Boot-prosjekt med Spring Cloud Gateway og konfigurer en enkel, fungerende gateway.

Leksjon 2 av 411 trinn

Oppsett av et grunnleggende gateway-prosjekt er en gratis leksjon i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) på CoddyKit. Dette er leksjon 2 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 API-gateway og reverse proxy (Nginx + Spring Cloud Gateway), og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) inneholder totalt 4 leksjoner.

Oppsett av gateway-prosjektet

Velkommen! I denne leksjonen lærer De hvordan De initialiserer et grunnleggende Spring Cloud Gateway-prosjekt. Dette er det første steget mot å bygge kraftige API-gatewayer.

Vi går gjennom hvordan De setter opp de nødvendige avhengighetene og oppretter en minimal, fungerende gateway-konfigurasjon.

Dette trenger De

Før vi setter i gang, må De sørge for at følgende verktøy er installert:

  • Java Development Kit (JDK) 17+: For å kjøre Spring Boot-applikasjoner.
  • Maven eller Gradle: Verktøy for byggautomatisering og håndtering av prosjektavhengigheter.
  • Et IDE (for eksempel IntelliJ IDEA eller VS Code): For å skrive og administrere koden.

Dette er standardverktøy for Spring Boot-utvikling.

Start med Spring Initializr

Den enkleste måten å starte et Spring Boot-prosjekt på er å bruke Spring Initializr. Det hjelper Dem med å generere et prosjekt med alt nødvendig grunnoppsett.

For gatewayen velger De bestemte avhengigheter for å komme raskt i gang.

Viktige gateway-avhengigheter

Når De bruker Spring Initializr, søker De etter og legger til disse viktige avhengighetene:

  • Spring Cloud Gateway: Dette er kjernebiblioteket som tilbyr gateway-funksjonalitet.
  • Spring WebFlux: Gatewayen er bygget på reaktiv programmering, så WebFlux er en transitiv avhengighet og avgjørende for driften.

Velg ønsket byggverktøy (Maven eller Gradle) og Java-versjon (for eksempel 17 eller 21).

Hovedapplikasjonsklassen

Etter at De har generert og importert prosjektet, finner De en hovedapplikasjonsklasse. Denne klassen bruker @SpringBootApplication til å starte applikasjonen.

Kjør denne enkle Spring Boot-applikasjonen for å se at den starter. Den gjør ikke så mye ennå, men den kjører!

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class GatewayProjectApplication {

  public static void main(String[] args) {
    SpringApplication.run(GatewayProjectApplication.class, args);
  }
}

Konfigurering av gateway-ruter

Nå som applikasjonen kan kjøre, må vi fortelle gatewayen hva den skal gjøre! Dette gjøres ved å definere ruter i filen application.yml (eller application.properties).

En rute kobler innkommende forespørsler til en bestemt backend-tjeneste basert på bestemte betingelser.

Grunnleggende ruteeksempel

La oss legge til en enkel rute i src/main/resources/application.yml. Denne ruten videresender forespørsler fra /get til http://httpbin.org:80, en offentlig tjeneste for testing.

Dette er det første steget mot å bruke en proxy for forespørsler!

spring:
  cloud:
    gateway:
      routes:
        - id: httpbin_route
          uri: http://httpbin.org:80
          predicates:
            - Path=/get

Forstå ruten

La oss gå gjennom denne rutekonfigurasjonen:

  • id: httpbin_route: En unik identifikator for ruten.
  • uri: http://httpbin.org:80: URL-en til mål-Backend-tjenesten som forespørslene videresendes til.
  • predicates: - Path=/get: En betingelse som må være oppfylt for at ruten skal aktiveres. Her betyr det alle forespørsler med en sti som begynner med /get.

Predikater fungerer omtrent som «if»-setninger for ruting.

Kjøre og teste gatewayen

Start Spring Boot-applikasjonen på nytt etter at application.yml er oppdatert. Gatewayen vil nå ta i bruk den nye ruten.

De kan teste den med curl eller nettleseren:

  • Åpne terminalen.
  • Kjør: curl http://localhost:8080/get

De skal se et JSON-svar fra httpbin.org, noe som bekrefter at gatewayen fungerer!

Test av gateway-oppsettet

De har nettopp satt opp Deres første Spring Cloud Gateway-prosjekt!

Hvilken av de følgende er den primære avhengigheten som kreves for å aktivere Spring Cloud Gateway-funksjonalitet i et Spring Boot-prosjekt?

Oppsummering: Grunnleggende gateway-oppsett

Godt jobbet! De har lært hvordan De kan:

  • Initialisere et Spring Boot-prosjekt ved hjelp av Spring Initializr.
  • Legge til den nødvendige spring-cloud-starter-gateway-avhengigheten.
  • Opprette en grunnleggende Spring Cloud Gateway-applikasjonsklasse.
  • Konfigurere Deres første gateway-rute i application.yml.
  • Teste gatewayen for å kontrollere at den videresender forespørsler riktig.

Dette grunnlaget vil hjelpe Dem med å bygge mer komplekse gateway-konfigurasjoner i senere leksjoner!

Gratis å komme i gang

Lær deg API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) 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
12
Leksjoner
48

Ofte stilte spørsmål

Er leksjonen «Oppsett av et grunnleggende gateway-prosjekt» gratis?

Ja – hele teksten i «Oppsett av et grunnleggende gateway-prosjekt» 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 API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)-kurset, kan du oppgradere til CoddyKit PRO. Kurset i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) inneholder totalt 4 leksjoner.

Hva lærer jeg i «Oppsett av et grunnleggende gateway-prosjekt»?

Initialiser et Spring Boot-prosjekt med Spring Cloud Gateway og konfigurer en enkel, fungerende gateway. Du øver på API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) 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 API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)?

Ingen tidligere erfaring er nødvendig. API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) 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 2 av 4.

Hvor lang tid tar leksjonen «Oppsett av et grunnleggende gateway-prosjekt»?

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 API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)-leksjonen?

Ja. Alle API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)-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

  1. Gateway kontra tradisjonelle mikrotjenester
  2. Oppsett av et grunnleggende gateway-prosjekt
  3. Definering av ruter og predikater
  4. Forstå det reaktive grunnlaget
← Tilbake til API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)