[英]Returning JSON response from Spring Exception Handler
我正在使用下面提到的Spring代碼來處理異常並將響應返回給客戶端。 由於我在這里使用了ResponseBody注釋,因此我期望spring在發生錯誤的情況下返回JSON響應,但是我看到下面的響應在客戶端收到(JSON響應位於responseText內部,而不是直接返回給客戶端)。 請建議我如何將JSON響應返回給Caller-
在客戶端收到的回復:-
Object {readyState: 4, responseText: "{"status":false,"msg":"User Data not available","r…"MARSAPI003","noOfRecords":0,"responseList":null}", responseJSON: Object, status: 403, statusText: "Forbidden"}
春季代碼:-
@ExceptionHandler(MarsUnAuthorizedOperation.class)
@ResponseBody
@ResponseStatus(value=HttpStatus.FORBIDDEN)
public MarsResponse unAuthorizedOperationExceptionHandler(final Exception ex){
final MarsResponse response = new MarsResponse();
response.setNoOfRecords(0);
response.setMsg(ex.getMessage());
response.setResponseCode(marsMessageProperties.getUnauthorizedOperationErrorCd());
response.setResponseMessage(marsMessageProperties.getUnauthorizedOperationErrorMsg());
response.setStatus(false);
return response;
}
我認為是@ResponseBody批注阻止了spring將MarsResponse對象編組為JSON對象。 嘗試將其刪除並再次檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.