web route时,返回数据base64编码

This commit is contained in:
imndx
2019-06-28 17:27:37 +08:00
parent da0b725ff8
commit 2fc106aa26
@@ -40,7 +40,7 @@ public class RouteAction extends Action {
if (request.getNettyRequest() instanceof FullHttpRequest) { if (request.getNettyRequest() instanceof FullHttpRequest) {
response.setContentType("application/octet-stream"); response.setContentType("application/octet-stream");
FullHttpRequest fullHttpRequest = (FullHttpRequest)request.getNettyRequest(); FullHttpRequest fullHttpRequest = (FullHttpRequest) request.getNettyRequest();
boolean b = false; boolean b = false;
if ("web".equalsIgnoreCase(fullHttpRequest.headers().get("p"))) { if ("web".equalsIgnoreCase(fullHttpRequest.headers().get("p"))) {
b = true; b = true;
@@ -144,10 +144,14 @@ public class RouteAction extends Action {
private void sendResponse(Response response, ErrorCode errorCode, byte[] contents, boolean base64Response) { private void sendResponse(Response response, ErrorCode errorCode, byte[] contents, boolean base64Response) {
response.setStatus(HttpResponseStatus.OK); response.setStatus(HttpResponseStatus.OK);
if(contents == null) { if (contents == null) {
ByteBuf ackPayload = Unpooled.buffer(); ByteBuf ackPayload = Unpooled.buffer();
ackPayload.ensureWritable(1).writeByte(errorCode.getCode()); ackPayload.ensureWritable(1).writeByte(errorCode.getCode());
response.setContent(ackPayload); contents = ackPayload.array();
}
if (base64Response) {
byte[] base64Data = Base64.getEncoder().encode(contents);
response.setContent(base64Data);
} else { } else {
response.setContent(contents); response.setContent(contents);
} }