How to Set Response Header Values ​​in Spring Service Methods for Boot?

Newbie question ... I am creating my first Spring Boot restful support service. For my calm service design, some data should be returned in the response header.

How to set response header values ​​inside a controller class method?

+13
source share
3 answers

From the spring documentation:

@RequestMapping("/handle")
public ResponseEntity<String> handle() {
    URI location = ...;
    HttpHeaders responseHeaders = new HttpHeaders();
    responseHeaders.setLocation(location);
    responseHeaders.set("MyResponseHeader", "MyValue");
    return new ResponseEntity<String>("Hello World", responseHeaders, HttpStatus.CREATED);
}

Source: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/http/ResponseEntity.html

+13
source

HttpServletResponse. API- Servlet, . ResponseEntity HttpEntity.

HttpHeaders headers = new HttpHeaders();
headers.add("1", "uno");

return new ResponseEntity<>(headers, HttpStatus.OK);
+12

, . , .

, , .

:

@RequestMapping(value="/car/{carId}", method = RequestMethod.Get)
@ResponseBody
public Car getCarById(@PathVariable("carId") String Id, HttpServletResponse response) {

    response.setHeader("X-Special-Header", myCar.getEcoLabel());
    //get the car
    return myCar;
}

, .

http://forum.spring.io/forum/spring-projects/web-services/102652-setting-header-values-with-spring-rest-controller

+7

Source: https://habr.com/ru/post/1681641/


All Articles