我是 spring 新手,在这里我发送一个 http 请求,需要将消息传递到服务器。但消息应该作为字节数组发送。我使用以下curl命令。这里传递的消息是“hello”。
curl -i -H "Content-type: application/json" -X POST -d '{"message":[72,69,76,76,79]}' http://localhost:8080/json
控制器应该监听请求并再次将消息字段恢复为 byte[]。控制器代码:
@RequestMapping(value = "/json", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public ResponseEntity<Map<String, Object>> jsonReceiver(@RequestHeader Map<String, String> headers, @RequestBody Map<String, Object> request) {
String bytes = request.get("message").toString();
LOGGER.info("Message: {}", bytes);
Map<String, Object> response = new HashMap<>();
response.put("status-code", "1000");
response.put("success", "true");
HttpHeaders respHeaders = new HttpHeaders();
respHeaders.add("Pragma", "ack");
return new ResponseEntity<Map<String, Object>>(response, respHeaders, HttpStatus.ACCEPTED);}
在这里我可以获得字符串形式的输出。但我想把它变成一个字节[]。有什么方法可以从控制器获取字节数组,而不需要读取字符串然后对其进行操作。
Message: [72,69,76,76,79]
潇湘沐
扬帆大鱼
拉莫斯之舞
相关分类