我得到406响应" HttpMediaTypeNotAcceptableException"从angularJS调用REST服务时。
$http.get('/MongoMicroServices-0.1.0/user/getByMailId/' + $scope.username).then(function(response){
//alert(response.data);
},
function(response){
console.log("Error!");
});
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping(value = "/getByMailId/{emailId}", method = RequestMethod.GET)
public User getUserByMailId(@PathVariable String emailId)
{
return userService.findUserByEmailId(emailId);
}
}
{"timestamp":1472558929345,"status":406,"error":"Not Acceptable","exception":"org.springframework.web.HttpMediaTypeNotAcceptableException","message":"Could not find acceptable representation","path":"/MongoMicroServices-0.1.0/user/getByMailId/admin@gmail.com"}
我正在使用春季靴子。以下是spring boot的依赖关系。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
</dependencies>
答案 0 :(得分:0)
您正在返回User
对象,可能是json
格式。
首先,您应该将produces='application/json'
添加到@RequestMapping
。这样可以防止将来出现许多麻烦。
其次,你应该在类路径中有一个对象序列化程序,例如Jackson(你的User
类应该实现Serializable
,但这只是为了你的和平在大多数情况下)。