Реакция заставляет меня говорить, что запрос о происхождении заблокирован: одна и та же политика происхождения запрещает чтение удаленного ресурса по адресу http://localhost:8080/users. (причина: отсутствует заголовок CORS Control Access-Control-Allow-Origin ’).
Странно думать, что это сработало и перестало работать без каких-либо изменений в коде контроллера ...
UserController.java
@RestController
@CrossOrigin
@RequestMapping(value = "/users")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping(value = "/{userId}", method = RequestMethod.GET)
private User findOne(@PathVariable("userId") Integer userId) {
return userService.findOne(userId);
}
@RequestMapping(method = RequestMethod.GET)
private List<User> findAll() {
return userService.findAll();
}
@RequestMapping(method = RequestMethod.POST)
private User create(@RequestBody User user) {
user.setId(null); // To ensure we create instead of update
return userService.save(user);
}
@RequestMapping(value = "/{userId}", method = RequestMethod.PUT)
private User update(@PathVariable("userId") Integer userId, @RequestBody User user) {
user.setId(userId); // To ensure we update instead of create
return userService.save(user);
}
@RequestMapping(value = "/{userId}", method = RequestMethod.DELETE)
private void delete(@PathVariable("userId") Integer userId) {
final User user = userService.findOne(userId);
userService.delete(user);
}
}
и это мой выбор на React
fetch('http://localhost:8080/users', {
method: 'GET',
headers: {
'content-type': 'application/json'
},
}).then(response => { return response.json();
}).then(data => {
this.setState({users:data});
});
}
Есть причина, по которой он внезапно перестал работать?
редактирование:
Я попытался создать новый чистый проект maven и скопировал все пакеты в новый проект, и теперь он работает, но я до сих пор не знаю, почему он перестал работать, код такой же, и теперь он работает.