用参数重定向到Spring MVC (REST API)中的URL



我在RestController中有一个端点。当处理请求时,必须执行重定向到另一个URL,并且需要在重定向URL中传递一个参数。

@RestController
@RequiredArgsConstructor
@Slf4j
public class RestControllerImpl  {
@Value("${uri-root}")
private String uriRoot;
private final Service service;
@PostMapping("/api")
public RedirectView performRequest(@RequestBody Transaction dto) {

service.perform(dto);

String referenceToken = "sldflh@2lhf*shdjkla"
String urlRedirect = uriRoot + "?token=" + referenceToken;
return new RedirectView(urlRedirect);
}
}

上面的代码不适合我。

我正在寻找关于stackoverflow的信息,但它建议使用ModelAndView或RedirectAttributes属性。但是我需要端点接受Post请求,该请求将带来将在服务层处理的数据。

不可能完成这个任务。有人能解释一下这是如何工作的,以及如何完成这样的任务吗?

成功了

@RestController
@RequiredArgsConstructor
@Slf4j
public class RestControllerImpl  {
@Value("${uri-root}")
private String uriRoot;
private final Service service;
@PostMapping("/api")
public ResponseEntity createClient(@RequestBody Transaction dto)  throws URISyntaxException {

service.perform(dto);

String referenceToken = "sldflh@2lhf*shdjkla"
String urlRedirect = uriRoot + "?token=" + referenceToken;
return ResponseEntity.created(new URI(urlRedirect)).build();
}
}

最新更新