Annotation Interface RequestHeader


@Target(PARAMETER) @Retention(RUNTIME) @Documented public @interface RequestHeader
Annotation which indicates that a method parameter should be bound to a web request header.

Supported for annotated handler methods in Spring MVC and Spring WebFlux.

If the method parameter is Map<String, String>, MultiValueMap<String, String>, or HttpHeaders then the map is populated with all header names and values.

Since:
3.0
Author:
Juergen Hoeller, Sam Brannen
See Also:
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    The default value to use as a fallback.
    The name of the request header to bind to.
    boolean
    Whether the header is required.
    Alias for name().
  • Element Details

    • value

      @AliasFor("name") String value
      Alias for name().
      Default:
      ""
    • name

      @AliasFor("value") String name
      The name of the request header to bind to.
      Since:
      4.2
      Default:
      ""
    • required

      boolean required
      Whether the header is required.

      Defaults to true, leading to an exception being thrown if the header is missing in the request. Switch this to false if you prefer a null value if the header is not present in the request.

      Alternatively, provide a defaultValue(), which implicitly sets this flag to false.

      Default:
      true
    • defaultValue

      String defaultValue
      The default value to use as a fallback.

      Supplying a default value implicitly sets required() to false.

      Default:
      "\n\t\t\n\t\t\n\ue000\ue001\ue002\n\t\t\t\t\n"