use*_*895 7 java spring json spring-mvc
我有一个我的REST Web服务应用程序的Spring端点,我想返回一个字符串:
"Unauthorized: token is invalid"
Run Code Online (Sandbox Code Playgroud)
但我在前端的javascript扼杀了这个:
JSON.parse("Unauthorized: token is invalid") //Unexpected token U
Run Code Online (Sandbox Code Playgroud)
如何让我的应用程序返回有效的JSON字符串?这是我目前的代码:
@RequestMapping(value="/401")
public ResponseEntity<String> unauthorized() {
return new ResponseEntity<String>("Unauthorized: token is invalid", HttpStatus.UNAUTHORIZED);
}
Run Code Online (Sandbox Code Playgroud)
Nei*_*gan 13
返回地图.
Map<String,String> result = new HashMap<String,String>();
result.put("message", "Unauthorized...");
return result;
Run Code Online (Sandbox Code Playgroud)
你不需要返回一个ResponseEntity,你可以直接返回一个POJO或集合.@ResponseBody如果要返回POJO或集合,请添加到处理程序方法.
另外,我会说这是更好地使用forward了redirect错误.
@Neil提供了一个比你想要完成的更好的替代方案.
然而,在回答所提出的问题时,你很接近.
下面修改的代码应该生成有效的JSON响应
@RequestMapping(value="/401")
public ResponseEntity<String> unauthorized() {
String json = "[\"Unauthorized\": \"token is invalid\"]";
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.setContentType(MediaType.APPLICATION_JSON);
return new ResponseEntity<String>(json, responseHeaders, HttpStatus.UNAUTHORIZED);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12446 次 |
| 最近记录: |