'u doğrudan ayarlamadan koşullu olarak ayarlama Bir Spring MVC istek işleyicisinde HTTP durum kodunu nasıl uygun bir şekilde koşullu olarak ayarlayabilirim?HTTP durumunu HttpServletResponse
Yeni bir kaynak oluşturmak için POST isteklerine yanıt veren bir istek işleyicim var. İstek geçerliyse, yeni kaynağın URI'sine yeniden yönlendirilmesini ve 201 (oluşturulan) HTTP durum kodunu döndürmesini istiyorum. İstek geçersiz olursa o kullanıcıya gönderilen formda hatayı düzeltmek için bir şans vermek istiyorum, ve 201.
@RequestMapping(value = { "/myURI/" }, method = RequestMethod.POST)
public String processNewThingForm(
@ModelAttribute(value = "name") final String name,
final BindingResult bindingResult) {
myValidator.validate(name, bindingResult);
if (!bindingResult.hasErrors()) {
getService().createThing(name);
return "redirect:" + name;
} else {
return "newThingView";
}
}
bir durum kodu vermemelidir Ama bu vermez Yeniden yönlendirme durumu için doğru yanıt durumu.
İki olası durum olduğundan, @ResponseStatus
ekleyemiyorum. Umarım manually manipulating the HttpServletResponse
'dan daha iyi bir yol vardır. Ve kullanmak için görünüm adını belirtmek istiyorum, bu yüzden ben have the request handler return a ResponseEntity
object with the status set appropriately yapamam.
"Eğer öyleyse, bir yönlendirme kullanamazsınız" Biliyorum. Bu benim sorumun noktası – Raedwald