I need to write an application which would be able to process binary data sent by CUrl, such as:
curl localhost:8080/data --data-binary @ZYSF15A46K1.txt
I've created a POST processing method as follows:
@RequestMapping(method = RequestMethod.POST, value = "/data")
public void acceptData(HttpEntity<byte[]> requestEntity) throws Exception {
process(requestEntity.getBody());
}
However it doesn't seem to be returning raw binary data. I've tried sending a GZip file and after going through Spring it is now longer decompressible, which leads me to believe I'm either getting too much data or too little data.
How do I solve this issue and get raw binary data?
HttpServletDequest
as the input parameter of your controller and read raw data from it'sInputStream
. – MeagreContent-Length
to make sure you get the right request. IfContent-Length
valid, you can read it fromInputStream
with specific length. If not please check your request. – Meagre