在后端(Spring控制器)中,我有一个使用@RequestParam String sentence
作为请求参数的方法。我想通过发送适当的参数来对此方法进行请求(发布)。
我在AngularJS中写道:
$http.post('http://localhost:8080/wordCount', '?sentence=blah')
但后端返回错误Required String parameter 'sentence' is not present"
这是我的控制器:
@RequestMapping(value = "wordCount", method = RequestMethod.POST)
public String count(@RequestParam(value = "sentence") String sentence) {
//omitted
}
答案 0 :(得分:0)
基本上@RequestParam
用于查询字符串参数(URL查询参数)。 @RequestBody
用于发布请求正文。
现在$ http.post用法是mentioned作为post(url,data,[config]),其中data是Post数据,可以使用@RequestBody
捕获。但是,由于您需要@RequestParam
,因此您需要传递附加到url的查询字符串参数,例如
$http.post('http://localhost:8080/wordCount?sentence=blah',{})
。
答案 1 :(得分:0)