Annotation Type HeaderParam


@Retention(RUNTIME) @Target(PARAMETER) public @interface HeaderParam
Replaces the header with the value of its target. The value specified here replaces headers specified statically in the Headers. If the parameter this annotation is attached to is a Map type, then this will be treated as a header collection. In that case each of the entries in the argument's map will be individual header values that use the value of this annotation as a prefix to their key/header name.

Example 1:

 @Put("{functionId}")
 Mono<ResponseBase<ResponseHeaders, ResponseBody>> createOrReplace(
     @PathParam(value = "functionId", encoded = true) String functionId,
     @BodyParam("application/json") RequestBody function,
     @HeaderParam("If-Match") String ifMatch);

 // "If-Match: user passed value" will show up as one of the headers.
 

Example 2:

 @Get("subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces")
 Mono<ResponseBase<ResponseHeaders, ResponseBody>> list(@PathParam("subscriptionId") String subscriptionId,
     @HeaderParam("accept-language") String acceptLanguage,
     @HeaderParam("User-Agent") String userAgent);

 // "accept-language" generated by the HTTP client will be overwritten by the user passed value.
 

Example 3:

 @Get("subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces")
 Mono<ResponseBase<ResponseHeaders, ResponseBody>> list(@PathParam("subscriptionId") String subscriptionId,
     @HeaderParam("Authorization") String token);

 // The token parameter will replace the effect of any credentials in the HttpPipeline.
 

Example 4:

 @Put("{containerName}/{blob}")
 @ExpectedResponses({200})
 Mono<ResponseBase<ResponseHeaders, Void>> setMetadata(@PathParam("containerName") String containerName,
     @PathParam("blob") String blob,
     @HeaderParam("x-ms-meta-") Map<String, String> metadata);

 // The metadata parameter will be expanded out so that each entry becomes
 // "x-ms-meta-{@literal <entryKey>}: {@literal <entryValue>}".
 
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The name of the variable in the endpoint uri template which will be replaced with the value of the parameter annotated with this annotation.
  • Element Details

    • value

      String value
      The name of the variable in the endpoint uri template which will be replaced with the value of the parameter annotated with this annotation.
      Returns:
      The name of the variable in the endpoint uri template which will be replaced with the value of the parameter annotated with this annotation.