В моем бэкэнде, если какое-то условие не соответствует действительности, я вставляю HttpStatus 412 (PRECONDITION_FAILED):
catch (StaticWeightModeNoObjectPresentException e) {
LOGGER.debug("startProd:HttpStatus.PRECONDITION_FAILED: "+ BUNDLE.getString("controller.start.prod.ko"));
response.setStatus(HttpStatus.PRECONDITION_FAILED.value());
return null;
}
На моей главной странице у меня есть этот код:
this.productionService.startProd('ETIQUETTE', +this.total).subscribe((res) => {
console.log(res.status);
if (res.status === 201 || res.status === 200) {
console.debug('print Stickers is started !', res);
}
},
(error) => {
console.log('startProd / error ', error);
if (error.status === 412) {
console.log('getWeight ===== 0');
this.showToasterMessage('getWeightKO.title', 'getWeightKO.body', null);
}
},
() => {
});
Я добавил точку останова в моем JS, и я вижу, что, когда у меня ошибка 412, я не вхожу в блок (ошибка)
В моей консоли я вижу ошибку как это:
POST http://localhost:8080/marqueo-connect-plus/api/v1/connectplus/startProd 412 (Echec de Pré-condition)
Что я должен добавить, чтобы перехватить статус 412 и показать правильное сообщение?