org.jboss.netty.handler.codec.http.HttpRequest.getHeaderNames()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(2.1k)|赞(0)|评价(0)|浏览(79)

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

HttpRequest.getHeaderNames介绍

暂无

代码示例

代码示例来源:origin: cgbystrom/jersey-netty

private InBoundHeaders getHeaders(HttpRequest request)
  {
    InBoundHeaders headers = new InBoundHeaders();

    for (String name : request.getHeaderNames())
    {
      headers.put(name, request.getHeaders(name));
    }

    return headers;
  }
}

代码示例来源:origin: org.elasticsoftware.elasticactors/elasticactors-http

@Override
public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception {
  org.jboss.netty.handler.codec.http.HttpRequest nettyRequest = (org.jboss.netty.handler.codec.http.HttpRequest) e.getMessage();
  // convert request to our internal request
  Map<String,List<String>> headers = new HashMap<String,List<String>>();
  for (String headerName : nettyRequest.getHeaderNames()) {
    headers.put(headerName,nettyRequest.getHeaders(headerName));
  }
  // see if we have a body
  byte[] content = null;
  if(nettyRequest.getContent().hasArray() && nettyRequest.getContent().array().length > 0) {
    content = nettyRequest.getContent().array();
  } else if(nettyRequest.getContent().readableBytes() > 0) {
    // netty content not backed by array, need to copy
    content = new byte[nettyRequest.getContent().readableBytes()];
    nettyRequest.getContent().readBytes(content);
  }
  HttpRequest request = new HttpRequest(nettyRequest.getMethod().getName(),new URI(nettyRequest.getUri()).getPath(),headers,content);
  // create a temp actor to handle the response
  ActorRef replyActor = actorSystem.tempActorOf(HttpServiceResponseHandler.class,
                         new HttpServiceResponseHandler.State(ctx.getChannel()));
  // put the actor in the attachment to propagate disconnects
  ctx.setAttachment(replyActor);
  // async handling
  if(!httpService.doDispatch(request,replyActor)) {
    // send 404
    ctx.getChannel().write(new DefaultHttpResponse(HttpVersion.HTTP_1_1,HttpResponseStatus.NOT_FOUND)).addListener(ChannelFutureListener.CLOSE);
    actorSystem.stop(replyActor);
  }
}

相关文章