У меня Java REST API, сгенерированный с использованием swagger, в том случае, если клиент не авторизован, тогда я отправляю пользовательские сообщения об ошибках в ответ
public Response collaborationCollabIdDelete(Integer collabId, SecurityContext securityContext, String authBase64String) throws NotFoundException {
// do some magic!
ErrorRequestObject erb;
ArrayList <ErrorRequestObject> erbs = new ArrayList<ErrorRequestObject>();
if (authBase64String == null)
{
erb = new ErrorRequestObject(); erb.setError("Missing Authorization in Header"); erb.setPath("Header:Authorization");
erb.setProposedSolution("Authorization Header should contain user:pwd:nhPath as Base64 string");
erbs.add(erb);
}
if (erbs.size() == 0)
{
//success code here
}
else
{
return Response.status(400).entity(erbs).build();
}
}
Я вызываю этот API с помощью ajax следующим образом:
$.ajax({
url : URL,
type : "DELETE",
dataType : "json",
contentType : "application/json",
async : false,
success : function(result){
Response.resolve(result);
console.log("Response : " + JSON.stringify(result));
}
});
теперь, когда я вызываю этот API с помощью ajax, вызываю его без авторизации в заголовке, это дает мне 400 статусов, что нормально, как и ожидалось, но как мне получить объект ошибки, созданный с помощью Java?Может кто-нибудь, пожалуйста, скажите мне, как я могу получить этот объект ошибки в клиенте JavaScript?