javax.ws.rs.container.ContainerRequestContext.getHeaderString()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(11.5k)|赞(0)|评价(0)|浏览(145)

本文整理了Java中javax.ws.rs.container.ContainerRequestContext.getHeaderString()方法的一些代码示例,展示了ContainerRequestContext.getHeaderString()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ContainerRequestContext.getHeaderString()方法的具体详情如下:
包路径:javax.ws.rs.container.ContainerRequestContext
类名称:ContainerRequestContext
方法名:getHeaderString

ContainerRequestContext.getHeaderString介绍

[英]Get a message header as a single string value.
[中]将消息头作为单个字符串值获取。

代码示例

代码示例来源:origin: dropwizard/dropwizard

@Override
  public void filter(ContainerRequestContext requestContext) throws IOException {
    final String dateHeader = requestContext.getHeaderString(HttpHeaders.DATE);
    if (dateHeader == null) {
      throw new WebApplicationException(new IllegalArgumentException("Date Header was not specified"),
          Response.Status.BAD_REQUEST);
    }
  }
}

代码示例来源:origin: jersey/jersey

@Override
public void filter(ContainerRequestContext ctx) throws IOException { // validate
  if (!headerValue.equals(ctx.getHeaderString(headerName))) {
    ctx.abortWith(Response.status(Response.Status.FORBIDDEN)
        .type(MediaType.TEXT_PLAIN)
        .entity(String.format("Expected header '%s' not present or value not equal to '%s'", headerName, headerValue))
        .build());
  }
}

代码示例来源:origin: stackoverflow.com

requestContext.getHeaderString(HttpHeaders.AUTHORIZATION);

代码示例来源:origin: opentripplanner/OpenTripPlanner

/**
 * CORS request filter.
 * Hijack "preflight" OPTIONS requests before the Jersey resources get them.
 * The response will then pass through the CORS response filter on its way back out.
 */
@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
  if (HttpMethod.OPTIONS.equals(requestContext.getMethod())) {
    Response.ResponseBuilder preflightResponse = Response.status(Response.Status.OK);
    if (requestContext.getHeaderString("Access-Control-Request-Headers") != null) {
      preflightResponse.header("Access-Control-Allow-Headers",
        requestContext.getHeaderString("Access-Control-Request-Headers"));
    }
    if (requestContext.getHeaderString("Access-Control-Request-Method") != null) {
      preflightResponse.header("Access-Control-Allow-Method", "GET,POST");
    }
    requestContext.abortWith(preflightResponse.build());
  }
}

代码示例来源:origin: Graylog2/graylog2-server

@Override
  public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
    if (responseContext.getStatusInfo().equals(Response.Status.UNAUTHORIZED)) {
      final String requestedWith = requestContext.getHeaderString(HttpHeaders.X_REQUESTED_WITH);
      if ("XMLHttpRequest".equalsIgnoreCase(requestedWith)) {
        responseContext.getHeaders().remove(HttpHeaders.WWW_AUTHENTICATE);

      }
    }
  }
}

代码示例来源:origin: jersey/jersey

private User authenticate(ContainerRequestContext filterContext) {
  String authentication = filterContext.getHeaderString(HttpHeaders.AUTHORIZATION);
  if (authentication == null) {
    throw new AuthenticationException("Authentication credentials are required", REALM);

代码示例来源:origin: opentripplanner/OpenTripPlanner

/**
 * CORS response filter. Allow requests from anywhere.
 * Just echo back the contents of the Origin header.
 * Allow credentials if the transport layer is secure.
 */
@Override
public void filter(ContainerRequestContext request, ContainerResponseContext response) throws IOException {
  String origin = request.getHeaderString("Origin"); // case insensitive
  MultivaluedMap<String, Object> headers = response.getHeaders();
  headers.add("Access-Control-Allow-Origin", origin);
  boolean secureTransport = request.getSecurityContext().isSecure();
  headers.add("Access-Control-Allow-Credentials", secureTransport);
}

代码示例来源:origin: apache/incubator-dubbo

@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
  HttpServletRequest request = ResteasyProviderFactory.getContextData(HttpServletRequest.class);
  RpcContext.getContext().setRequest(request);
  // this only works for servlet containers
  if (request != null && RpcContext.getContext().getRemoteAddress() == null) {
    RpcContext.getContext().setRemoteAddress(request.getRemoteAddr(), request.getRemotePort());
  }
  RpcContext.getContext().setResponse(ResteasyProviderFactory.getContextData(HttpServletResponse.class));
  String headers = requestContext.getHeaderString(DUBBO_ATTACHMENT_HEADER);
  if (headers != null) {
    for (String header : headers.split(",")) {
      int index = header.indexOf("=");
      if (index > 0) {
        String key = header.substring(0, index);
        String value = header.substring(index + 1);
        if (!StringUtils.isEmpty(key)) {
          RpcContext.getContext().setAttachment(key.trim(), value.trim());
        }
      }
    }
  }
}

代码示例来源:origin: apache/incubator-dubbo

@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
  HttpServletRequest request = ResteasyProviderFactory.getContextData(HttpServletRequest.class);
  RpcContext.getContext().setRequest(request);
  // this only works for servlet containers
  if (request != null && RpcContext.getContext().getRemoteAddress() == null) {
    RpcContext.getContext().setRemoteAddress(request.getRemoteAddr(), request.getRemotePort());
  }
  RpcContext.getContext().setResponse(ResteasyProviderFactory.getContextData(HttpServletResponse.class));
  String headers = requestContext.getHeaderString(DUBBO_ATTACHMENT_HEADER);
  if (headers != null) {
    for (String header : headers.split(",")) {
      int index = header.indexOf("=");
      if (index > 0) {
        String key = header.substring(0, index);
        String value = header.substring(index + 1);
        if (!StringUtils.isEmpty(key)) {
          RpcContext.getContext().setAttachment(key.trim(), value.trim());
        }
      }
    }
  }
}

代码示例来源:origin: apache/incubator-pinot

@Override
 public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext)
   throws IOException {
  final String method = requestContext.getMethod();
  final String uri = requestContext.getUriInfo().getRequestUri().toString();
  final int respStatus = responseContext.getStatus();
  final String reasonPhrase = responseContext.getStatusInfo().getReasonPhrase();
  final String srcIpAddr = request.get().getRemoteAddr();
  final String contentType = requestContext.getHeaderString(HttpHeaders.CONTENT_TYPE);
  LOGGER.info("Handled request from {} {} {}, content-type {} status code {} {}", srcIpAddr, method, uri, contentType,
    respStatus, reasonPhrase);
 }
}

代码示例来源:origin: dropwizard/dropwizard

@Override
public void filter(final ContainerRequestContext request,
    final ContainerResponseContext response) throws IOException {
  String id = request.getHeaderString(REQUEST_ID);
  if (Strings.isNullOrEmpty(id)) {
    id = generateRandomUuid().toString();
  }
  logger.trace("method={} path={} request_id={} status={} length={}",
      request.getMethod(), request.getUriInfo().getPath(), id,
      response.getStatus(), response.getLength());
  response.getHeaders().putSingle(REQUEST_ID, id);
}

代码示例来源:origin: opentripplanner/OpenTripPlanner

@Override
public void filter(ContainerRequestContext containerRequest) throws WebApplicationException {
  // Get the authentication passed in HTTP headers parameters
  String auth = containerRequest.getHeaderString(HttpHeaders.AUTHORIZATION);
  if (auth != null) {
    if (auth.startsWith("Basic ") || auth.startsWith("basic ")) {
      if ( ! containerRequest.getSecurityContext().isSecure()) unencrypted();
      auth = auth.replaceFirst("[Bb]asic ", "");
      String[] split = new String(BaseEncoding.base64().decode(auth)).split(":", 2);
      if (split.length != 2) return;
      String user = split[0];
      String pass = split[1];
      if (pass.equals(passwords.get(user))) {
        containerRequest.setSecurityContext(makeSecurityContext(user, user));
      } else {
        unauthenticated (user);
      }
    }
  }
}

代码示例来源:origin: jersey/jersey

@Override
public void filter(ContainerRequestContext request) throws IOException {
  // do not filter requests that do not use OAuth authentication
  String authHeader = request.getHeaderString(OAuth1Parameters.AUTHORIZATION_HEADER);
  if (authHeader == null || !authHeader.toUpperCase().startsWith(OAuth1Parameters.SCHEME.toUpperCase())) {
    return;
  }
  // do not filter requests that matches to access or token resources
  final Method handlingMethod = uriInfo.get().getMatchedResourceMethod().getInvocable().getHandlingMethod();
  if (handlingMethod.isAnnotationPresent(TokenResource.class)
      || handlingMethod.getDeclaringClass().isAnnotationPresent(TokenResource.class)) {
    return;
  }
  // do not filter if the request path matches pattern to ignore
  if (match(ignorePathPattern, request.getUriInfo().getPath())) {
    return;
  }
  OAuth1SecurityContext sc;
  try {
    sc = getSecurityContext(request);
  } catch (OAuth1Exception e) {
    if (optional) {
      return;
    } else {
      throw e;
    }
  }
  request.setSecurityContext(sc);
}

代码示例来源:origin: Graylog2/graylog2-server

@Override
  public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
    if (LOG.isDebugEnabled()) {
      try {
        final String rawQuery = requestContext.getUriInfo().getRequestUri().getRawQuery();
        final Date requestDate = requestContext.getDate();
        final String userName = RestTools.getUserNameFromRequest(requestContext);
        final String remoteAddress = RestTools.getRemoteAddrFromRequest(response.getRequest(), trustedProxies);
        final String userAgent = requestContext.getHeaderString(HttpHeaders.USER_AGENT);

        LOG.debug("{} {} [{}] \"{} {}{}\" {} {} {}",
            remoteAddress,
            userName == null ? "-" : userName,
            (requestDate == null ? "-" : requestDate),
            requestContext.getMethod(),
            requestContext.getUriInfo().getPath(),
            (rawQuery == null ? "" : "?" + rawQuery),
            (userAgent == null ? "-" : userAgent),
            responseContext.getStatus(),
            responseContext.getLength());
      } catch (Exception e) {
        LOG.error("Error while processing REST API access log", e);
      }
    }
  }
}

代码示例来源:origin: traccar/traccar

String authHeader = requestContext.getHeaderString(AUTHORIZATION_HEADER);
if (authHeader != null) {

代码示例来源:origin: traccar/traccar

@Override
public void filter(ContainerRequestContext request, ContainerResponseContext response) throws IOException {
  if (!response.getHeaders().containsKey(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString())) {
    response.getHeaders().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString(), HEADERS_ALL);
  }
  if (!response.getHeaders().containsKey(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString())) {
    response.getHeaders().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString(), true);
  }
  if (!response.getHeaders().containsKey(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString())) {
    response.getHeaders().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString(), METHODS_ALL);
  }
  if (!response.getHeaders().containsKey(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString())) {
    String origin = request.getHeaderString(HttpHeaderNames.ORIGIN.toString());
    String allowed = Context.getConfig().getString("web.origin");
    if (origin == null) {
      response.getHeaders().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString(), ORIGIN_ALL);
    } else if (allowed == null || allowed.equals(ORIGIN_ALL) || allowed.contains(origin)) {
      response.getHeaders().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString(), origin);
    }
  }
}

代码示例来源:origin: HubSpot/Singularity

private Optional<String> getUserId(ContainerRequestContext context) {
 try {
  return Optional.ofNullable(Strings.emptyToNull(context.getHeaderString(requestUserHeaderName)));
 } catch (ProvisionException pe) {
  return Optional.empty();
 }
}

代码示例来源:origin: HubSpot/Singularity

private String extractAuthHeader(ContainerRequestContext context) {
 final String authHeaderValue = context.getHeaderString(HttpHeaders.AUTHORIZATION);
 if (Strings.isNullOrEmpty(authHeaderValue)) {
  throw WebExceptions.unauthorized("No Authorization header present, please log in first");
 } else {
  return authHeaderValue;
 }
}

代码示例来源:origin: alipay/sofa-rpc

String remoteAppName = requestContext.getHeaderString(RemotingConstants.HEAD_APP_NAME);
if (StringUtils.isNotBlank(remoteAppName)) {
  serverSpan.setTag(RpcSpanTags.REMOTE_APP, remoteAppName);

代码示例来源:origin: alipay/sofa-rpc

String remoteAppName = requestContext.getHeaderString(RemotingConstants.HEAD_APP_NAME);
if (StringUtils.isNotBlank(remoteAppName)) {
  serverSpan.setTag(RpcSpanTags.REMOTE_APP, remoteAppName);

相关文章

微信公众号

最新文章

更多