我正在编写一个具有PUT操作的REST API,使用它我想将数据保存到MongoDB。
我的PUT操作接受JSON格式的数据,这些数据将以相同的格式插入到MongoDB中。我面临的问题是当我在请求体中提供JSON对象时,我在服务器端(REST API端点)将其作为NULL接收
以下是我在控制器中的代码
@RequestMapping(method = RequestMethod.PUT)
@ResponseBody
@Consumes(MediaType.APPLICATION_JSON_VALUE)
Environment_per_user SaveData(Environment_per_user Env_Details) {
return service.SaveEnvDetails(Env_Details);
}
我正在使用Mozilla Firefox的REST Client来测试我的Web服务。
我的REST Api端点上的调试器,显示请求正文为空
我确信我错过了一些基本的东西,但不知怎的,我无法弄明白。
答案 0 :(得分:0)
回答我自己的问题,如果明天帮助某人。
这就是我所做的。在我的控制器方法中添加了@RequestBody注释。这将告诉JSON对象是请求体的一部分。
@RequestMapping(method = RequestMethod.PUT)
@ResponseBody
@Consumes(MediaType.APPLICATION_JSON_VALUE)
Environment_per_user SaveData(@RequestBody Environment_per_user Env_Details) {
return service.SaveEnvDetails(Env_Details);
}
在我的REST客户端的请求标头中 - > 添加了标题,Content-Type ='application / json'。