gpt4 book ai didi

java - 如果 Controller 方法返回 ResponseEntity 如何使用 Spring 重定向

转载 作者:IT老高 更新时间:2023-10-28 13:45:30 25 4
gpt4 key购买 nike

我想写这样的东西:

@RequestMapping(value = { "/member/uploadExternalImage",
"/member/uploadExternalImage" }, method = RequestMethod.GET)
public ResponseEntity<String> handleFileUpload(@RequestParam String url,@RequestParam String fileName, RedirectAttributes redirectAttributes) {
...
return new ResponseEntity("Cannot save file " + fileName, HttpStatus.INTERNAL_SERVER_ERROR);
...
return "redirect:/member/uploadImage";
}

预期行为 - 重定向到 Controller :

@RequestMapping(value = { "/member/createCompany/uploadImage",
"/member/uploadImage" })
@ResponseBody
public ResponseEntity<String> handleFileUpload(@Validated MultipartFileWrapper file,
BindingResult result, Principal principal

但我不能写它,因为 "redirect:/member/uploadImage" 是 String 但应该是 ResponseEntity

我该如何解决我的问题?

最佳答案

如果您不明确需要返回 ResponseEntity,您可以重新声明您的方法,例如:

public String handleFileUpload(@RequestParam String url,@RequestParam String fileName, RedirectAttributes redirectAttributes) {
return "Cannot save file " + fileName;
...
return "redirect:/member/uploadImage";
}

但是如果您需要使用 ResponseEntity,那么您似乎可以按照 here 的描述添加重定向到 ResponseEntity .

HttpHeaders headers = new HttpHeaders();
headers.add("Location", "/member/uploadImage");
return new ResponseEntity<String>(headers,HttpStatus.FOUND);

关于java - 如果 Controller 方法返回 ResponseEntity 如何使用 Spring 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32184175/

25 4 0