Я пишу веб-приложение REST (NetBeans 6.9, JAX-RS, TopLink Essentials) и пытаюсь вернуть JSON и Код состояния HTTP. У меня есть готовый и работающий код, который возвращает JSON при вызове метода HTTP GET из клиента. По сути:
@Path("get/id")
@GET
@Produces("application/json")
public M_機械 getMachineToUpdate(@PathParam("id") String id) {
// some code to return JSON ...
return myJson;
}
Но я также хочу вернуть код состояния HTTP (500, 200, 204 и т. Д.) Вместе с данными JSON.
Я попытался использовать HttpServletResponse
:
response.sendError("error message", 500);
Но это заставило браузер подумать, что это "настоящий" 500, поэтому выходная веб-страница была обычной страницей с ошибкой HTTP 500.
Я хочу вернуть код состояния HTTP, чтобы мой клиентский JavaScript мог обрабатывать некоторую логику в зависимости от этого (например, чтобы отобразить код ошибки и сообщение на странице HTML). Возможно ли это, или не следует использовать коды состояния HTTP для таких вещей?