private Map<String, String> buildMapFromHeaders(SlingHttpServletRequest request) { Map<String, String> map = new HashMap<>(); Enumeration keys = request.getHeaderNames(); while (keys.hasMoreElements()) { Object keyObject = keys.nextElement(); if (keyObject instanceof String) { String key = (String)keyObject; if (StringUtils.startsWith(key, REQUEST_HEADER_PREFIX)) { map.put(StringUtils.substringAfter(key, REQUEST_HEADER_PREFIX), request.getHeader(key)); } } } return map; }
private boolean containsHeader(String requiredHeader, SlingHttpServletRequest request) { final String name, expectedValue; if (StringUtils.contains(requiredHeader, '=')) { final String split[] = StringUtils.split(requiredHeader, '='); name = split[0]; expectedValue = split[1]; } else { name = requiredHeader; expectedValue = null; } final String actualValue = request.getHeader(name); if (actualValue == null) { return false; } else if (expectedValue == null) { return true; } else { return actualValue.equalsIgnoreCase(expectedValue); } }
/** * Get the submitter's IP address. * * @param request The SlingHttpServlet request. * @return The submitter's IP address. */ private String getIPAddress(final SlingHttpServletRequest request) { String ipAddress = request.getHeader("X-FORWARDED-FOR"); if (ipAddress == null) { ipAddress = request.getRemoteAddr(); } return ipAddress; } }
@Override public KeyValueMapWrapper build() { Enumeration<String> headerNames = request.getHeaderNames(); while(headerNames.hasMoreElements()){ String key = headerNames.nextElement(); String value = request.getHeader(key); if (allowedValues.containsKey(key) && StringUtils.isNotBlank(value)) { String[] specificAllowedValues = allowedValues.get(key).split(SEPERATOR); for (String allowedValue : specificAllowedValues) { if (allowedValue.equals(value)) { keyValueMapWrapper.put(key, value); } } } else if(allowedKeys.contains(key)){ keyValueMapWrapper.put(key, EMPTY); } } return keyValueMapWrapper; } }
private boolean accepts(final SlingHttpServletRequest slingRequest) { final Resource resource = slingRequest.getResource(); if (!StringUtils.equalsIgnoreCase("get", slingRequest.getMethod())) { // Only inject on GET requests return false; } else if (!StringUtils.startsWithAny(resource.getPath(), prefixes)) { return false; } else if (StringUtils.equals(slingRequest.getHeader("X-Requested-With"), "XMLHttpRequest")) { // Do not inject into XHR requests return false; } return true; }
protected void handleCORS(final SlingHttpServletRequest request, final SlingHttpServletResponse response) { final String origin = request.getHeader(ORIGIN); if (origin != null && origin.length() > 0) { response.setHeader(ACCESS_CONTROL_ALLOW_ORIGIN, origin); response.setHeader(ACCESS_CONTROL_ALLOW_CREDENTIALS, "true"); response.setHeader(ACCESS_CONTROL_ALLOW_HEADERS, "Authorization"); response.setHeader(ACCESS_CONTROL_ALLOW_METHODS, "GET, POST"); } } }
private boolean accepts(final SlingHttpServletRequest slingRequest) { final Resource resource = slingRequest.getResource(); if (!StringUtils.equalsIgnoreCase("get", slingRequest.getMethod())) { // Only inject on GET requests return false; } else if (!StringUtils.startsWithAny(resource.getPath(), prefixes)) { return false; } else if (StringUtils.equals(slingRequest.getHeader("X-Requested-With"), "XMLHttpRequest")) { // Do not inject into XHR requests return false; } return true; }
protected void handleCORS(final SlingHttpServletRequest request, final SlingHttpServletResponse response) { final String origin = request.getHeader(ORIGIN); if (origin != null && origin.length() > 0) { response.setHeader(ACCESS_CONTROL_ALLOW_ORIGIN, origin); response.setHeader(ACCESS_CONTROL_ALLOW_CREDENTIALS, "true"); response.setHeader(ACCESS_CONTROL_ALLOW_HEADERS, "Authorization"); response.setHeader(ACCESS_CONTROL_ALLOW_METHODS, "GET, POST"); } } }
@Override public Resource createUGCContainer(SlingHttpServletRequest request, UGCBucketConfig bucketConfig, String preview, String targetPath) throws PersistenceException { serviceResolver.refresh(); Resource resource = null; log.debug("Creating content of type {} in bucket {}", bucketConfig.getContentType(), bucketConfig.getBucket()); Map<String, Object> resourceProperties = new HashMap<>(); resourceProperties.put(JcrConstants.JCR_PRIMARYTYPE, CMSConstants.NT_UGC); resourceProperties.put("approveaction", bucketConfig.getAction().toString()); resourceProperties.put("contenttype", bucketConfig.getContentType().toString()); resourceProperties.put("preview", preview); resourceProperties.put("published", false); resourceProperties.put("referrer", request.getHeader("referer")); if (StringUtils.isNotBlank(targetPath)) { resourceProperties.put("targetpath", targetPath); } resourceProperties.put("user", request.getResourceResolver().getUserID()); resourceProperties.put("useragent", request.getHeader("User-Agent")); resourceProperties.put("userip", request.getRemoteAddr()); String contentPath = generatePath(bucketConfig); log.debug("Creating article contents {}", contentPath); resource = ResourceUtil.getOrCreateResource(serviceResolver, contentPath, resourceProperties, JcrResourceConstants.NT_SLING_ORDERED_FOLDER, true); return resource; }
log.error("Unable to dispatch proxy request for {} referrer={}", request.getRequestURI(), request.getHeader("Referrer")); throw new ServletException("No Content");
String digestHeader = request.getHeader(DIGEST_HEADER); if (isNotEmpty(digestHeader)) { log.debug("Found Digest header {}, extracting algorithm and message...", digestHeader);
String queryParam = req.getParameter(MediaRangeList.PARAM_ACCEPT); if (queryParam == null || queryParam.trim().length() == 0) { String headerValue = req.getHeader(MediaRangeList.HEADER_ACCEPT); if (headerValue == null || headerValue.trim().length() == 0) {
HttpRequest proxyRequest; if (request.getHeader(HttpHeaders.CONTENT_LENGTH) != null || request.getHeader(HttpHeaders.TRANSFER_ENCODING) != null) { HttpEntityEnclosingRequest eProxyRequest = new BasicHttpEntityEnclosingRequest(method, proxyRequestUri); eProxyRequest.setEntity(new InputStreamEntity(request.getInputStream(), request.getContentLength()));
} catch (RepositoryException e) { LOGGER.error("Could not save blog to repository.", e); response.sendRedirect(request.getHeader("referer")); } catch (PersistenceException e){ LOGGER.error("Could not save blog to repository.", e); response.sendRedirect(request.getHeader("referer")); } finally { if (resolver != null && resolver.isLive()) {
htmlResponse.setReferer(request.getHeader("referer"));
response.setReferer(request.getHeader("referer"));