在提交请求时,控件总是选择 GET 方法而不是 POST
on submitting request control is always picking up GET method and not POST
我正在尝试使用 spring3 hibernate3 和 tiles2。
@RequestMapping(value = "/capturedetails", method = RequestMethod.GET)
public String getcapturedetails(Model model, HttpSession session,
HttpServletRequest request) {
Customer customer=new Customer();
model.addAttribute("customer", customer);
return "capturedetails";
}
@RequestMapping(value = "/capturedetails", method = RequestMethod.POST)
public String addcustomer(
@ModelAttribute("Customer") Customer customer, Model model,
HttpSession session, HttpServletRequest request) {
custBarcodeService.saveCustomer(customer);
model.addAttribute("customer ", new Customer());
return "capturedetails";
}
提交请求控件后,它总是选择 GET 方法而不是 POST...
我该如何解决这个问题?
我过去也遇到过类似的问题。在我的例子中,我试图从 post 人发出一个 POST 请求,主体是 json
到一个端点,该端点在控制器端接收 x-www-form-urlencoded
格式的数据。
请注意,如果您在 post 控制器方法中使用 @ModelAttribute
,它会以 x-www-form-urlencoded
格式接收数据。如果是这种情况,那么可能的解决方案是
使用@RequestBody
:
使post请求方法接收json
数据
@RequestMapping(value = "/capturedetails", method = RequestMethod.POST)
public String addcustomer(@RequestBody Customer customer, Model model,
HttpSession session, HttpServletRequest request) {
custBarcodeService.saveCustomer(customer);
model.addAttribute("customer ", new Customer());
return "capturedetails";
}
从 rest 客户端以 x-www-form-urlencode
格式发送数据
我认为您可能打开了多个表单元素...检查您的磁贴布局文件并删除多个表单元素,然后尝试 post。
因为同样的解决方案也解决了我的问题。
我正在尝试使用 spring3 hibernate3 和 tiles2。
@RequestMapping(value = "/capturedetails", method = RequestMethod.GET)
public String getcapturedetails(Model model, HttpSession session,
HttpServletRequest request) {
Customer customer=new Customer();
model.addAttribute("customer", customer);
return "capturedetails";
}
@RequestMapping(value = "/capturedetails", method = RequestMethod.POST)
public String addcustomer(
@ModelAttribute("Customer") Customer customer, Model model,
HttpSession session, HttpServletRequest request) {
custBarcodeService.saveCustomer(customer);
model.addAttribute("customer ", new Customer());
return "capturedetails";
}
提交请求控件后,它总是选择 GET 方法而不是 POST... 我该如何解决这个问题?
我过去也遇到过类似的问题。在我的例子中,我试图从 post 人发出一个 POST 请求,主体是 json
到一个端点,该端点在控制器端接收 x-www-form-urlencoded
格式的数据。
请注意,如果您在 post 控制器方法中使用 @ModelAttribute
,它会以 x-www-form-urlencoded
格式接收数据。如果是这种情况,那么可能的解决方案是
使用
使post请求方法接收@RequestBody
:json
数据@RequestMapping(value = "/capturedetails", method = RequestMethod.POST) public String addcustomer(@RequestBody Customer customer, Model model, HttpSession session, HttpServletRequest request) { custBarcodeService.saveCustomer(customer); model.addAttribute("customer ", new Customer()); return "capturedetails"; }
从 rest 客户端以
x-www-form-urlencode
格式发送数据
我认为您可能打开了多个表单元素...检查您的磁贴布局文件并删除多个表单元素,然后尝试 post。 因为同样的解决方案也解决了我的问题。