@Override public boolean isEnabled(byte[] content, boolean isRequest) { if (!isRequest && tab.getBeautifierEnabled()) { IResponseInfo respinfo = callbacks.getHelpers().analyzeResponse(content); return ("script".equals(respinfo.getStatedMimeType()) || "script".equals(respinfo.getInferredMimeType())); } else { return false; } }
static byte[] filterResponse(byte[] response) { if (response == null) { return new byte[]{'n','u','l','l'}; } byte[] filteredResponse; IResponseInfo details = helpers.analyzeResponse(response); String inferredMimeType = details.getInferredMimeType(); if(inferredMimeType.isEmpty()) { inferredMimeType = details.getStatedMimeType(); } inferredMimeType = inferredMimeType.toLowerCase(); if(inferredMimeType.contains("text") || inferredMimeType.equals("html") || inferredMimeType.contains("xml") || inferredMimeType.contains("script") || inferredMimeType.contains("css") || inferredMimeType.contains("json")) { filteredResponse = helpers.stringToBytes(helpers.bytesToString(response).toLowerCase()); } else { String headers = helpers.bytesToString(Arrays.copyOfRange(response, 0, details.getBodyOffset())) + details.getInferredMimeType(); filteredResponse = helpers.stringToBytes(headers.toLowerCase()); } if(details.getStatedMimeType().toLowerCase().contains("json") && (inferredMimeType.contains("json") || inferredMimeType.contains("javascript"))) { String headers = helpers.bytesToString(Arrays.copyOfRange(response, 0, details.getBodyOffset())); String body = helpers.bytesToString(Arrays.copyOfRange(response, details.getBodyOffset(), response.length)); filteredResponse = helpers.stringToBytes(headers + StringEscapeUtils.unescapeJson(body)); } return filteredResponse; }
static byte[] filterResponse(byte[] response) { if (response == null) { return new byte[]{'n','u','l','l'}; } byte[] filteredResponse; IResponseInfo details = helpers.analyzeResponse(response); String inferredMimeType = details.getInferredMimeType(); if(inferredMimeType.isEmpty()) { inferredMimeType = details.getStatedMimeType(); } inferredMimeType = inferredMimeType.toLowerCase(); if(inferredMimeType.contains("text") || inferredMimeType.equals("html") || inferredMimeType.contains("xml") || inferredMimeType.contains("script") || inferredMimeType.contains("css") || inferredMimeType.contains("json")) { filteredResponse = helpers.stringToBytes(helpers.bytesToString(response).toLowerCase()); } else { String headers = helpers.bytesToString(Arrays.copyOfRange(response, 0, details.getBodyOffset())) + details.getInferredMimeType(); filteredResponse = helpers.stringToBytes(headers.toLowerCase()); } if(details.getStatedMimeType().toLowerCase().contains("json") && (inferredMimeType.contains("json") || inferredMimeType.contains("javascript"))) { String headers = helpers.bytesToString(Arrays.copyOfRange(response, 0, details.getBodyOffset())); String body = helpers.bytesToString(Arrays.copyOfRange(response, details.getBodyOffset(), response.length)); filteredResponse = helpers.stringToBytes(headers + StringEscapeUtils.unescapeJson(body)); } return filteredResponse; }
String mime_type = respInfo.getStatedMimeType(); request_id += respInfo.getStatusCode() + mime_type;
String contentType = respInfo.getStatedMimeType();
private boolean checkRequestForOpenIdLoginMetadata(IResponseInfo responseInfo, IHttpRequestResponse httpRequestResponse) { if (responseInfo.getStatusCode() == STATUS_OK && MIMETYPE_HTML.equals(responseInfo.getStatedMimeType())) { final byte[] responseBytes = httpRequestResponse.getResponse(); final int bodyOffset = responseInfo.getBodyOffset();