当前位置: 首页>>代码示例>>Java>>正文


Java HttpResponseStatus类代码示例

本文整理汇总了Java中io.netty.handler.codec.http.HttpResponseStatus的典型用法代码示例。如果您正苦于以下问题:Java HttpResponseStatus类的具体用法?Java HttpResponseStatus怎么用?Java HttpResponseStatus使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


HttpResponseStatus类属于io.netty.handler.codec.http包,在下文中一共展示了HttpResponseStatus类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: writeBack

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
public static int writeBack(Channel channel, boolean isSuccess, String resultStr, boolean isKeepAlive) {
    ByteBuf content = Unpooled.copiedBuffer(resultStr, Constants.DEFAULT_CHARSET);
    HttpResponseStatus status;
    if (isSuccess) {
        status = HttpResponseStatus.OK;
    } else {
        status = HttpResponseStatus.INTERNAL_SERVER_ERROR;
    }
    FullHttpResponse res = new DefaultFullHttpResponse(HTTP_1_1, status, content);
    //logger.info("result str:{}", resultStr);
    res.headers().set(CONTENT_TYPE, "text/html; charset=UTF-8");
    HttpHeaders.setContentLength(res, content.readableBytes());
    try {
        ChannelFuture f = channel.writeAndFlush(res);
        if (isKeepAlive) {
            HttpHeaders.setKeepAlive(res, true);
        } else {
            HttpHeaders.setKeepAlive(res, false);//set keepalive closed
            f.addListener(ChannelFutureListener.CLOSE);
        }
    } catch (Exception e2) {
        logger.warn("Failed to send HTTP response to remote, cause by:", e2);
    }

    return content.readableBytes();
}
 
开发者ID:tiglabs,项目名称:jsf-sdk,代码行数:27,代码来源:HttpJsonHandler.java

示例2: handle

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@Override
public void handle(@NotNull RoutingContext context) {
  context.vertx().<Buffer>executeBlocking(future -> {
    try (final ByteArrayOutputStream output = new ByteArrayOutputStream()) {
      new ProtobufFormatter(registry.metricFamilySamples()).write(output);
      future.complete(Buffer.buffer(output.toByteArray()));
    } catch (IOException e) {
      future.fail(e);
    }
  }, false, result -> {
    if (result.succeeded()) {
      context.response()
          .setStatusCode(HttpResponseStatus.OK.code())
          .putHeader("Content-Type", ProtobufFormatter.CONTENT_TYPE)
          .end(result.result());
    } else {
      context.fail(result.cause());
    }
  });
}
 
开发者ID:nolequen,项目名称:vertx-prometheus-metrics,代码行数:21,代码来源:MetricsProtobufHandler.java

示例3: get

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@Override
public FullHttpResponse get(ChannelHandlerContext channelHandlerContext, QueryDecoder queryDecoder, PathProvider path, HttpRequest httpRequest) throws Exception
{
    CloudNet.getLogger().debug("HTTP Request from " + channelHandlerContext.channel().remoteAddress());

    StringBuilder stringBuilder = new StringBuilder();

    try (InputStream inputStream = WebsiteDocumentation.class.getClassLoader().getResourceAsStream("files/api-doc.txt");
         BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8)))
    {
        String input;
        while ((input = bufferedReader.readLine()) != null)
        {
            stringBuilder.append(input).append(System.lineSeparator());
        }
    }

    String output = stringBuilder.substring(0);
    ByteBuf byteBuf = Unpooled.wrappedBuffer(output.getBytes(StandardCharsets.UTF_8));
    FullHttpResponse fullHttpResponse = new DefaultFullHttpResponse(httpRequest.getProtocolVersion(), HttpResponseStatus.OK, byteBuf);
    fullHttpResponse.headers().set("Content-Type", "text/plain");
    return fullHttpResponse;
}
 
开发者ID:Dytanic,项目名称:CloudNet,代码行数:24,代码来源:WebsiteDocumentation.java

示例4: refreshConfig

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@SuppressWarnings("unchecked")
void refreshConfig() {
  HttpHeaders headers = new HttpHeaders();
  headers.add("Content-Type", "application/json;charset=UTF-8");
  headers.add("Authorization", token);
  HttpEntity<String> entity = new HttpEntity<>(headers);
  ResponseEntity<String> exchange = rest.exchange(composeAPI(), HttpMethod.GET, entity, String.class);
  if (HttpResponseStatus.OK.code() == exchange.getStatusCode().value()) {
    try {
      Map<String, Object> body = JsonUtils.OBJ_MAPPER.readValue(exchange.getBody(),
          new TypeReference<Map<String, Object>>() {
          });
      refreshConfigItems((Map<String, Object>) body.get("configurations"));
    } catch (IOException e) {
      LOGGER.error("JsonObject parse config center response error: ", e);
    }
  } else {
    LOGGER.error("fetch configuration failed, error code:{} for {}",
        exchange.getStatusCodeValue(),
        exchange.getBody());
  }
}
 
开发者ID:apache,项目名称:incubator-servicecomb-java-chassis,代码行数:23,代码来源:ApolloClient.java

示例5: refreshMembers

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
private void refreshMembers(MemberDiscovery memberDiscovery) {
  if (CONFIG_CENTER_CONFIG.getAutoDiscoveryEnabled()) {
    String configCenter = memberDiscovery.getConfigServer();
    IpPort ipPort = NetUtils.parseIpPortFromURI(configCenter);
    clientMgr.findThreadBindClientPool().runOnContext(client -> {
      HttpClientRequest request = client.get(ipPort.getPort(), ipPort.getHostOrIp(), URIConst.MEMBERS, rsp -> {
        if (rsp.statusCode() == HttpResponseStatus.OK.code()) {
          rsp.bodyHandler(buf -> {
            memberDiscovery.refreshMembers(buf.toJsonObject());
          });
        }
      });
      SignRequest signReq = createSignRequest(request.method().toString(),
          configCenter + URIConst.MEMBERS, new HashMap<>(), null);
      if (ConfigCenterConfig.INSTANCE.getToken() != null) {
        request.headers().add("X-Auth-Token", ConfigCenterConfig.INSTANCE.getToken());
      }
      authHeaderProviders.forEach(provider -> request.headers().addAll(provider.getSignAuthHeaders(signReq)));
      request.end();
    });
  }
}
 
开发者ID:apache,项目名称:incubator-servicecomb-java-chassis,代码行数:23,代码来源:ConfigCenterClient.java

示例6: toStoreResponse

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
private StoreResponse toStoreResponse(HttpResponseStatus httpResponseStatus,
        HttpResponseHeaders httpResponseHeaders, InputStream contentInputStream) throws IOException {

    List<Entry<String, String>> headerEntries = httpResponseHeaders.entries();

    String[] headers = new String[headerEntries.size()];
    String[] values = new String[headerEntries.size()];

    int i = 0;

    for(Entry<String, String> headerEntry: headerEntries) {
        headers[i] = headerEntry.getKey();
        values[i] = headerEntry.getValue();
        i++;
    }

    StoreResponse storeResponse = new StoreResponse(
            headers,
            values,
            httpResponseStatus.code(),
            contentInputStream);

    return storeResponse;
}
 
开发者ID:Azure,项目名称:azure-documentdb-rxjava,代码行数:25,代码来源:RxGatewayStoreModel.java

示例7: createErrorResponse

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
private static JsonObject createErrorResponse(
    RoutingContext routingContext, Throwable exception) {
  // by default ...
  int status = 500;

  // intercept specific exception types and assign the relevant HTTP status code
  if (InvalidRequestException.class.isAssignableFrom(exception.getClass())
      || SubscriptionUnsupportedException.class.isAssignableFrom(exception.getClass())) {
    status = HttpResponseStatus.BAD_REQUEST.code();
  } else if (InvalidCredentialsException.class.isAssignableFrom(exception.getClass())) {
    status = HttpResponseStatus.UNAUTHORIZED.code();
  } else if (AccessDeniedException.class.isAssignableFrom(exception.getClass())) {
    status = HttpResponseStatus.FORBIDDEN.code();
  }

  return new JsonObject()
      .put("timestamp", LocalDateTime.now().toString())
      .put("statusCode", status)
      .put("statusMessage", HttpResponseStatus.valueOf(status).reasonPhrase())
      .put("path", routingContext.request().uri())
      .put("message", orDefault(exception.getMessage(), ""))
      .put("stackTrace", displayable(exception.getStackTrace()));
}
 
开发者ID:glytching,项目名称:dragoman,代码行数:24,代码来源:GlobalExceptionHandler.java

示例8: create

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@Override
public RoleClient create(Throwable cause) {
    LOGGER.error("RoleClient find {}, by using {}", cause.getMessage(), RESOURCE_ID);
    if (null != fallback) {
        return fallback;
    }

    responseObjectDTO = new HashMap();
    Map result = new HashMap();
    result.put("totalElements", 0l);
    responseObjectDTO.put("data", result);
    responseObjectDTO.put("code", HttpResponseStatus.BAD_GATEWAY.code());
    responseObjectDTO.put("msg", "RoleClient is not available");

    return fallback = new RoleClient() {
        @Override
        public Map roles() {
            LOGGER.error("roles() invoke fail");
            return responseObjectDTO;
        }
    };
}
 
开发者ID:afterloe,项目名称:bpm-client,代码行数:23,代码来源:RoleClientFallbackFactory.java

示例9: canHandleFailureForGetDataset

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@Test
public void canHandleFailureForGetDataset() {
  String id = "aDatasetId";

  Exception exception = new RuntimeException("boom!");

  when(datasetDao.get(id)).thenThrow(exception);

  String endpoint = "dataset/" + id;
  HttpResponse response = read(endpoint);

  assertThat(response.getStatusCode(), is(HttpResponseStatus.INTERNAL_SERVER_ERROR.code()));
  assertThat(
      response.getStatusMessage(), is(HttpResponseStatus.INTERNAL_SERVER_ERROR.reasonPhrase()));

  assertThatErrorResponseIsCorrect(
      response.getPayload(), exception.getMessage(), endpoint, INTERNAL_SERVER_ERROR);
}
 
开发者ID:glytching,项目名称:dragoman,代码行数:19,代码来源:DatasetResourceTest.java

示例10: startDownTask

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
public static void startDownTask(TaskInfo taskInfo, HttpRequest httpRequest,
    HttpResponse httpResponse, Channel clientChannel) {
  HttpHeaders httpHeaders = httpResponse.headers();
  HttpDownInfo httpDownInfo = new HttpDownInfo(taskInfo, httpRequest);
  HttpDownServer.DOWN_CONTENT.put(taskInfo.getId(), httpDownInfo);
  httpHeaders.clear();
  httpResponse.setStatus(HttpResponseStatus.OK);
  httpHeaders.set(HttpHeaderNames.CONTENT_TYPE, "text/html");
  String host = HttpDownServer.isDev() ? "localhost"
      : ((InetSocketAddress) clientChannel.localAddress()).getHostString();
  String js =
      "<script>window.top.location.href='http://" + host + ":" + HttpDownServer.VIEW_SERVER_PORT
          + "/#/tasks/new/" + httpDownInfo
          .getTaskInfo().getId()
          + "';</script>";
  HttpContent content = new DefaultLastHttpContent();
  content.content().writeBytes(js.getBytes());
  httpHeaders.set(HttpHeaderNames.CONTENT_LENGTH, js.getBytes().length);
  clientChannel.writeAndFlush(httpResponse);
  clientChannel.writeAndFlush(content);
  clientChannel.close();
}
 
开发者ID:monkeyWie,项目名称:proxyee-down,代码行数:23,代码来源:HttpDownUtil.java

示例11: willCreateANewUserIfNoneExists

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@Test
public void willCreateANewUserIfNoneExists() {
  String userName = "aName";
  String password = "aPassword";

  when(authenticationDao.exists(userName)).thenReturn(false);

  String payload = "{ \"username\": \"" + userName + "\", \"password\": \"" + password + "\" }";

  HttpResponse response = post("login", payload);

  assertThat(response.getStatusCode(), is(HttpResponseStatus.OK.code()));
  assertThat(response.getStatusMessage(), is(HttpResponseStatus.OK.reasonPhrase()));
  // we expect the session cookie to have been set
  assertThat(response.getHeaders(), hasKey("set-cookie"));
  // we expect to be redirected to the about page
  assertThat(response.getUrl(), Matchers.endsWith("/dragoman/about.hbs"));

  verify(authenticationDao, never()).isValid(userName, password);
  verify(authenticationDao, times(1)).createUser(userName, password);
}
 
开发者ID:glytching,项目名称:dragoman,代码行数:22,代码来源:AuthenticationResourceTest.java

示例12: getDino

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
private static FullHttpResponse getDino(XrpcRequest request, List<Dino> dinos) {
  try {
    DinoGetRequest getRequest =
        DinoGetRequest.parseFrom(CodedInputStream.newInstance(request.getData().nioBuffer()));
    Optional<Dino> dinoOptional =
        dinos.stream().filter(xs -> xs.getName().equals(getRequest.getName())).findFirst();

    if (dinoOptional.isPresent()) {
      DinoGetReply getReply = DinoGetReply.newBuilder().setDino(dinoOptional.get()).build();
      ByteBuf resp = request.getByteBuf();
      resp.ensureWritable(CodedOutputStream.computeMessageSizeNoTag(getReply), true);
      getReply.writeTo(new ByteBufOutputStream(resp));

      return Recipes.newResponse(
          HttpResponseStatus.OK,
          request.getByteBuf().writeBytes(resp),
          Recipes.ContentType.Application_Octet_Stream);
    }

  } catch (IOException e) {
    return Recipes.newResponseBadRequest("Malformed GetDino Request: " + e.getMessage());
  }

  return Recipes.newResponseOk("Dino not Found");
}
 
开发者ID:Nordstrom,项目名称:xrpc,代码行数:26,代码来源:Example.java

示例13: configResponseCodeMeters

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
private void configResponseCodeMeters() {
  final Map<HttpResponseStatus, String> meterNamesByStatusCode = new ConcurrentHashMap<>(6);

  // Create the proper metrics containers
  final String NAME_PREFIX = "responseCodes.";
  meterNamesByStatusCode.put(HttpResponseStatus.OK, NAME_PREFIX + "ok");
  meterNamesByStatusCode.put(HttpResponseStatus.CREATED, NAME_PREFIX + "created");
  meterNamesByStatusCode.put(HttpResponseStatus.NO_CONTENT, NAME_PREFIX + "noContent");
  meterNamesByStatusCode.put(HttpResponseStatus.BAD_REQUEST, NAME_PREFIX + "badRequest");
  meterNamesByStatusCode.put(HttpResponseStatus.NOT_FOUND, NAME_PREFIX + "notFound");
  meterNamesByStatusCode.put(
      HttpResponseStatus.TOO_MANY_REQUESTS, NAME_PREFIX + "tooManyRequests");
  meterNamesByStatusCode.put(
      HttpResponseStatus.INTERNAL_SERVER_ERROR, NAME_PREFIX + "serverError");

  for (Map.Entry<HttpResponseStatus, String> entry : meterNamesByStatusCode.entrySet()) {
    ctx.getMetersByStatusCode().put(entry.getKey(), metricRegistry.meter(entry.getValue()));
  }
}
 
开发者ID:Nordstrom,项目名称:xrpc,代码行数:20,代码来源:Router.java

示例14: newResponse

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
/**
 * Returns a full HTTP response with the specified status, content type, and custom headers.
 *
 * <p>Headers should be specified as a map of strings. For example, to allow CORS, add the
 * following key and value: "access-control-allow-origin", "http://foo.example"
 *
 * <p>If content type or content length are passed in as custom headers, they will be ignored.
 * Instead, content type will be as specified by the parameter contentType and content length will
 * be the length of the parameter contentLength.
 */
public static FullHttpResponse newResponse(
    HttpResponseStatus status,
    ByteBuf payload,
    ContentType contentType,
    Map<String, String> customHeaders) {
  FullHttpResponse response = new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, status, payload);

  if (customHeaders != null) {
    for (Map.Entry<String, String> entry : customHeaders.entrySet()) {
      response.headers().set(entry.getKey(), entry.getValue());
    }
  }

  response.headers().set(CONTENT_TYPE, contentType.value);
  response.headers().setInt(CONTENT_LENGTH, payload.readableBytes());

  return response;
}
 
开发者ID:Nordstrom,项目名称:xrpc,代码行数:29,代码来源:Recipes.java

示例15: handle

import io.netty.handler.codec.http.HttpResponseStatus; //导入依赖的package包/类
@Override
public Observable<Void> handle(HttpServerRequest<ByteBuf> request, HttpServerResponse<ByteBuf> response) {
    String path = request.getDecodedPath().substring(1);
    String[] pathArray = path.split("/");
    
    if (pathArray.length > 0 && options.getBasePath().equals(pathArray[0])) {
        Observable<TusResponse> tResp = handlerFactory.makeHandler(request).handle();
        return tResp.map(tr -> { 
            tr.getHeaders().stream()
            .forEach(h -> response.setHeader(h.getName(), h.getValue()));
            response.setStatus(HttpResponseStatus.valueOf(tr.getStatusCode()));
            return null;
        });
    }
	return http404(response);
}
 
开发者ID:jerbome,项目名称:tusRx,代码行数:17,代码来源:TusRxRequestHandler.java


注:本文中的io.netty.handler.codec.http.HttpResponseStatus类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。