복붙노트

[SPRING] 스프링 플럭스에 대한 HATEOAS / Mono response

SPRING

스프링 플럭스에 대한 HATEOAS / Mono response

저는 스프링 HATEOAS 지침을 사용하고 있습니다 :

https://spring.io/guides/gs/rest-hateoas/#initial

package hello;

import static org.springframework.hateoas.mvc.ControllerLinkBuilder.*;

import org.springframework.http.HttpEntity;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@RestController
public class GreetingController {

    private static final String TEMPLATE = "Hello, %s!";

    @RequestMapping("/greeting")
    public HttpEntity<Greeting> greeting(@RequestParam(value = "name", required = false, defaultValue = "World") String name) {

        Greeting greeting = new Greeting(String.format(TEMPLATE, name));
        greeting.add(linkTo(methodOn(GreetingController.class).greeting(name)).withSelfRel());

        return new ResponseEntity<Greeting>(greeting, HttpStatus.OK);
    }
}

이제 저장소를 사용하고 Flux / Mono 응답을 출력하고 싶습니다.

@RestController
class PersonController {

    private final PersonRepository people;

    public PersonController(PersonRepository people) {
        this.people = people;
    }

    @GetMapping("/people")
    Flux<String> namesByLastname(@RequestParam Mono<String> lastname) {

        Flux<Person> result = repository.findByLastname(lastname);
        return result.map(it -> it.getFullName());
    }
}

Flux / Mono 응답에서 Spring HATEOAS를 사용하려면 어떻게해야합니까? 전혀 가능합니까?

해결법

  1. ==============================

    1.나는이 프로젝트가 Spring Framework의 새로운 사후 대응을 지원하지 않는다고 생각한다. 최선의 방법은 관리자에게 연락하고 프로젝트에 기여하는 것입니다 (문제를 만들고 무엇을 성취하려고하는지 설명하는 것은 시작입니다!).

    나는이 프로젝트가 Spring Framework의 새로운 사후 대응을 지원하지 않는다고 생각한다. 최선의 방법은 관리자에게 연락하고 프로젝트에 기여하는 것입니다 (문제를 만들고 무엇을 성취하려고하는지 설명하는 것은 시작입니다!).

  2. from https://stackoverflow.com/questions/45650753/hateoas-on-spring-flux-mono-response by cc-by-sa and MIT license