本文整理了Java中javax.ws.rs.container.ContainerRequestContext.getMethod()
方法的一些代码示例,展示了ContainerRequestContext.getMethod()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ContainerRequestContext.getMethod()
方法的具体详情如下:
包路径:javax.ws.rs.container.ContainerRequestContext
类名称:ContainerRequestContext
方法名:getMethod
[英]Get the request method.
[中]获取请求方法。
代码示例来源:origin: jersey/jersey
@Override
public String getRequestMethod() {
return context.getMethod();
}
代码示例来源:origin: oracle/helidon
/**
* Name is generated from class and method as {http-method}:{fully-qualified-class-name}.{method-name}.
*
* @param requestContext context to extract information from
* @return name of span to use
*/
public static String classMethodName(ContainerRequestContext requestContext) {
Method m = getDefinitionMethod(requestContext);
return requestContext.getMethod()
+ ":" + m.getDeclaringClass().getName()
+ "." + m.getName();
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext responseContext)
throws IOException {
if (HttpMethod.OPTIONS.equals(requestContext.getMethod())) {
final MultivaluedMap<String, Object> headers = responseContext.getHeaders();
if (!headers.containsKey(ACCEPT_PATCH_HEADER)) {
headers.putSingle(ACCEPT_PATCH_HEADER, MediaType.APPLICATION_JSON_PATCH_JSON);
}
}
}
}
代码示例来源:origin: oracle/helidon
/**
* Name is generated from path as {http-method}:{request-path}.
*
* @param requestContext context to extract information from
* @return name of span to use
*/
public static String httpPathMethodName(ContainerRequestContext requestContext) {
String path = requestContext.getUriInfo().getPath();
if (!path.startsWith("/")) {
path = "/" + path;
}
return requestContext.getMethod()
+ ":" + path;
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(ContainerRequestContext rc) throws IOException {
if (!METHODS_TO_IGNORE.contains(rc.getMethod()) && !rc.getHeaders().containsKey(HEADER_NAME)) {
throw new BadRequestException();
}
}
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(ContainerRequestContext rc) throws IOException {
if (!METHODS_TO_IGNORE.contains(rc.getMethod()) && !rc.getHeaders().containsKey(HEADER_NAME)) {
throw new BadRequestException();
}
}
}
代码示例来源: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: 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: Graylog2/graylog2-server
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
final Response.StatusType responseStatus = responseContext.getStatusInfo();
final String requestPath = requestContext.getUriInfo().getAbsolutePath().getPath();
final List<MediaType> acceptableMediaTypes = requestContext.getAcceptableMediaTypes();
final boolean acceptsHtml = acceptableMediaTypes.stream()
.anyMatch(mediaType -> mediaType.isCompatible(MediaType.TEXT_HTML_TYPE) || mediaType.isCompatible(MediaType.APPLICATION_XHTML_XML_TYPE));
final boolean isGetRequest = "get".equalsIgnoreCase(requestContext.getMethod());
if (isGetRequest
&& responseStatus == Response.Status.NOT_FOUND
&& acceptsHtml
&& !requestPath.startsWith("/" + HttpConfiguration.PATH_API)) {
final String entity = indexHtmlGenerator.get(requestContext.getHeaders());
responseContext.setStatusInfo(Response.Status.OK);
responseContext.setEntity(entity, new Annotation[0], MediaType.TEXT_HTML_TYPE);
responseContext.getHeaders().putSingle("X-UA-Compatible", "IE=edge");
}
}
}
代码示例来源: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: docker-java/docker-java
@Override
public void filter(final ContainerRequestContext context) throws IOException {
final long id = aid.incrementAndGet();
final StringBuilder b = new StringBuilder();
printRequestLine(b, "Server has received a request", id, context.getMethod(), context.getUriInfo()
.getRequestUri());
printPrefixedHeaders(b, id, REQUEST_PREFIX, context.getHeaders());
if (printEntity && context.hasEntity()) {
context.setEntityStream(logInboundEntity(b, context.getEntityStream()));
}
log(b);
}
代码示例来源:origin: Graylog2/graylog2-server
@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
final SecurityContext securityContext = requestContext.getSecurityContext();
if (securityContext instanceof ShiroSecurityContext) {
final ShiroSecurityContext context = (ShiroSecurityContext) securityContext;
final String userName = RestTools.getUserNameFromRequest(requestContext);
final ContextAwarePermissionAnnotationHandler annotationHandler = new ContextAwarePermissionAnnotationHandler(context);
final String[] requiredPermissions = annotation.value();
try {
LOG.debug("Checking authorization for user [{}], needs permissions: {}", userName, requiredPermissions);
annotationHandler.assertAuthorized(annotation);
} catch (AuthorizationException e) {
LOG.info("Not authorized. User <{}> is missing permissions {} to perform <{} {}>",
userName, Arrays.toString(requiredPermissions), requestContext.getMethod(), requestContext.getUriInfo().getPath());
throw new ForbiddenException("Not authorized");
}
} else {
throw new ForbiddenException();
}
}
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext request) {
if (!request.getMethod().equalsIgnoreCase("POST")) {
return;
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext request) {
if (!request.getMethod().equalsIgnoreCase("POST")) {
return;
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext context) throws IOException {
if (!logger.isLoggable(level)) {
return;
}
final long id = _id.incrementAndGet();
context.setProperty(LOGGING_ID_PROPERTY, id);
final StringBuilder b = new StringBuilder();
printRequestLine(b, "Server has received a request", id, context.getMethod(), context.getUriInfo().getRequestUri());
printPrefixedHeaders(b, id, REQUEST_PREFIX, context.getHeaders());
if (context.hasEntity() && printEntity(verbosity, context.getMediaType())) {
context.setEntityStream(
logInboundEntity(b, context.getEntityStream(), MessageUtils.getCharset(context.getMediaType())));
}
log(b);
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext context) throws IOException {
if (!logger.isLoggable(level)) {
return;
}
final long id = _id.incrementAndGet();
context.setProperty(LOGGING_ID_PROPERTY, id);
final StringBuilder b = new StringBuilder();
printRequestLine(b, "Server has received a request", id, context.getMethod(), context.getUriInfo().getRequestUri());
printPrefixedHeaders(b, id, REQUEST_PREFIX, context.getHeaders());
if (context.hasEntity() && printEntity(verbosity, context.getMediaType())) {
context.setEntityStream(
logInboundEntity(b, context.getEntityStream(), MessageUtils.getCharset(context.getMediaType())));
}
log(b);
}
代码示例来源:origin: oracle/helidon
@Override
protected FilterContext initRequestFiltering(ContainerRequestContext requestContext) {
FilterContext context = new FilterContext();
Method definitionMethod = getDefinitionMethod(requestContext);
if (definitionMethod == null) {
// this will end in 404, just let it on
context.setShouldFinish(true);
return context;
}
context.setMethodSecurity(getMethodSecurity(definitionMethod));
context.setResourceName(definitionMethod.getDeclaringClass().getSimpleName());
context.setMethod(requestContext.getMethod());
context.setHeaders(HttpUtil.toSimpleMap(requestContext.getHeaders()));
context.setTargetUri(requestContext.getUriInfo().getRequestUri());
context.setResourcePath(context.getTargetUri().getPath());
context.setJerseyRequest((ContainerRequest) requestContext);
// now extract headers
featureConfig().getQueryParamHandlers()
.forEach(handler -> handler.extract(uriInfo, context.getHeaders()));
return context;
}
代码示例来源:origin: oracle/helidon
@Override
public void filter(ContainerRequestContext requestContext) {
if (!tracingEnabled(requestContext)) {
return;
}
ServerRequest serverRequest = this.request.get();
Tracer tracer = serverRequest.webServer().configuration().tracer();
SpanContext parentSpan = TracingContext.get()
.map(TracingContext::parentSpan)
.orElseGet(serverRequest::spanContext);
Tracer.SpanBuilder spanBuilder = tracer
.buildSpan(spanName(requestContext))
.asChildOf(parentSpan)
.withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_SERVER)
.withTag(Tags.HTTP_METHOD.getKey(), requestContext.getMethod())
.withTag(Tags.HTTP_URL.getKey(), requestContext.getUriInfo().getRequestUri().toString())
.withTag(Tags.COMPONENT.getKey(), "jaxrs");
configureSpan(spanBuilder);
Span span = spanBuilder.start();
requestContext.setProperty(SPAN_PROPERTY, span);
// set the client tracing context
TracingContext.compute(() -> TracingContext.create(tracer, requestContext.getHeaders()))
.parentSpan(span.context());
}
代码示例来源:origin: oracle/helidon
@Override
protected SecurityFilter.FilterContext initRequestFiltering(ContainerRequestContext requestContext) {
SecurityFilter.FilterContext context = new SecurityFilter.FilterContext();
// this is a pre-matching filter, so no method or class security
SecurityDefinition methodDef = new SecurityDefinition(false);
methodDef.requiresAuthentication(true);
methodDef.setRequiresAuthorization(featureConfig().shouldUsePrematchingAuthorization());
context.setMethodSecurity(methodDef);
context.setResourceName("jax-rs");
context.setMethod(requestContext.getMethod());
context.setHeaders(HttpUtil.toSimpleMap(requestContext.getHeaders()));
context.setTargetUri(requestContext.getUriInfo().getRequestUri());
context.setResourcePath(context.getTargetUri().getPath());
context.setJerseyRequest((ContainerRequest) requestContext);
// now extract headers
featureConfig().getQueryParamHandlers()
.forEach(handler -> handler.extract(uriInfo, context.getHeaders()));
return context;
}
内容来源于网络,如有侵权,请联系作者删除!