API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) · Урок

Встроенные GatewayFilters, которые стоит знать

Изучите наиболее полезные фабрики GatewayFilter, доступные из коробки, чтобы решать распространённые задачи без написания собственного кода.

Урок 4 из 413 шагов

«Встроенные GatewayFilters, которые стоит знать» — бесплатный урок API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway), и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Filters You Get for Free

Before writing custom filters, know that Spring Cloud Gateway ships with dozens of ready-made GatewayFilter factories. You attach them per route in configuration.

This lesson tours the ones you will reach for most often.

AddRequestHeader

AddRequestHeader injects a header into every request before it reaches the backend, useful for tagging traffic from the gateway.

filters:
  - AddRequestHeader=X-Source, gateway

AddResponseHeader

Likewise, AddResponseHeader adds a header to the response sent back to the client, for example a marker showing which gateway handled it.

filters:
  - AddResponseHeader=X-Handled-By, edge-gateway

RewritePath

RewritePath uses a regex to transform the incoming path before forwarding. Strip a public prefix while keeping the rest.

filters:
  - RewritePath=/api/(?<seg>.*), /$\{seg}

StripPrefix

When you just need to drop leading path segments, StripPrefix is simpler than a rewrite. StripPrefix=1 removes the first segment.

filters:
  - StripPrefix=1
# /service/users -> /users

PrefixPath

The reverse of stripping, PrefixPath prepends a segment to the path sent upstream.

filters:
  - PrefixPath=/internal
# /users -> /internal/users

SetStatus

SetStatus forces the HTTP status code of the response, handy for maintenance routes or deprecation notices.

filters:
  - SetStatus=410

RedirectTo

RedirectTo returns a redirect response with a status and target URL instead of proxying.

filters:
  - RedirectTo=302, https://new.example.com

RemoveRequestHeader

Strip a header before it reaches the backend with RemoveRequestHeader, for example to drop a client-supplied header you do not trust.

filters:
  - RemoveRequestHeader=Cookie

A Full Route Example

Filters stack in declared order. Here a route strips a prefix, tags the request, and marks the response.

routes:
  - id: users
    uri: http://users-svc:8080
    predicates:
      - Path=/api/users/**
    filters:
      - StripPrefix=2
      - AddRequestHeader=X-Source, gateway
      - AddResponseHeader=X-Handled-By, edge

Default Filters

Use default-filters to apply a filter to every route at once, such as adding a correlation header everywhere.

spring:
  cloud:
    gateway:
      default-filters:
        - AddResponseHeader=X-Gateway, true

Quick Check

You want to turn /api/users into /users by dropping the first path segment. Which filter is the simplest fit?

Recap

You now have a toolbox of built-in filters:

  • Header filters: Add/Remove request and response headers
  • Path filters: StripPrefix, PrefixPath, RewritePath
  • Response control: SetStatus, RedirectTo
  • default-filters apply globally

Reach for these before writing custom code, then build custom filters only when nothing fits.

Можно начать бесплатно

Изучай API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
12
Уроки
48

Часто задаваемые вопросы

Урок «Встроенные GatewayFilters, которые стоит знать» бесплатный?

Да — полный текст урока «Встроенные GatewayFilters, которые стоит знать» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway), подпишись на CoddyKit PRO. Курс API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) содержит 4 уроков всего.

Чему я научусь в уроке «Встроенные GatewayFilters, которые стоит знать»?

Изучите наиболее полезные фабрики GatewayFilter, доступные из коробки, чтобы решать распространённые задачи без написания собственного кода. Ты практикуешь API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)?

Предыдущий опыт не требуется. API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Встроенные GatewayFilters, которые стоит знать»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)?

Да. Каждый урок API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Глобальные фильтры и GatewayFilterFactory
  2. Пользовательские фильтры запросов и ответов
  3. Предварительная и последующая обработка с помощью фильтров
  4. Встроенные GatewayFilters, которые стоит знать
← Назад к API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)