热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

本文整理了Java中org.jboss.netty.handler.codec.http.HttpHeaders.contains()方法的一些代码示例,展示了

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

HttpHeaders.contains介绍

[英]Returns true if a header with the name and value exists.
[中]如果存在具有名称和值的标头,则返回true。

代码示例

代码示例来源:origin: io.netty/netty

/**
* Checks to see if the transfer encoding in a specified {@link HttpMessage} is chunked
*
* @param message The message to check
* @return True if transfer encoding is chunked, otherwise false
*/
public static boolean isTransferEncodingChunked(HttpMessage message) {
return message.headers().contains(Names.TRANSFER_ENCODING, Values.CHUNKED, true);
}

代码示例来源:origin: io.netty/netty

public static boolean isContentLengthSet(HttpMessage m) {
return m.headers().contains(Names.CONTENT_LENGTH);
}

代码示例来源:origin: io.netty/netty

@Override
public void writeRequested(ChannelHandlerContext ctx, MessageEvent e) throws Exception {
if (e.getMessage() instanceof HttpResponse) {
HttpResponse respOnse= (HttpResponse) e.getMessage();
Integer id = ids.poll();
if (id != null && id.intValue() != NO_ID && !response.headers().contains(SpdyHttpHeaders.Names.STREAM_ID)) {
SpdyHttpHeaders.setStreamId(response, id);
}
}
super.writeRequested(ctx, e);
}

代码示例来源:origin: io.netty/netty

@Override
public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception {
if (e.getMessage() instanceof HttpMessage) {
boolean cOntains= ((HttpMessage) e.getMessage()).headers().contains(SpdyHttpHeaders.Names.STREAM_ID);
if (!contains) {
ids.add(NO_ID);
} else {
ids.add(SpdyHttpHeaders.getStreamId((HttpMessage) e.getMessage()));
}
} else if (e.getMessage() instanceof SpdyRstStreamFrame) {
// remove id from the queue
ids.remove(((SpdyRstStreamFrame) e.getMessage()).getStreamId());
}
super.messageReceived(ctx, e);
}

代码示例来源:origin: io.netty/netty

/**
* Returns the content length of the specified web socket message. If the
* specified message is not a web socket message, {@code -1} is returned.
*/
private static int getWebSocketContentLength(HttpMessage message) {
// WebSockset messages have constant content-lengths.
HttpHeaders h = message.headers();
if (message instanceof HttpRequest) {
HttpRequest req = (HttpRequest) message;
if (HttpMethod.GET.equals(req.getMethod()) &&
h.contains(Names.SEC_WEBSOCKET_KEY1) &&
h.contains(Names.SEC_WEBSOCKET_KEY2)) {
return 8;
}
} else if (message instanceof HttpResponse) {
HttpResponse res = (HttpResponse) message;
if (res.getStatus().getCode() == 101 &&
h.contains(Names.SEC_WEBSOCKET_ORIGIN) &&
h.contains(Names.SEC_WEBSOCKET_LOCATION)) {
return 16;
}
}
// Not a web socket message
return -1;
}

代码示例来源:origin: io.netty/netty

@Override
protected boolean isContentAlwaysEmpty(HttpMessage msg) {
// Unlike HTTP, RTSP always assumes zero-length body if Content-Length
// header is absent.
boolean empty = super.isContentAlwaysEmpty(msg);
if (empty) {
return true;
}
if (!msg.headers().contains(RtspHeaders.Names.CONTENT_LENGTH)) {
return true;
}
return empty;
}
}

代码示例来源:origin: io.netty/netty

/**
* Check if the given request is a multipart request
*
* @return True if the request is a Multipart request
*/
public static boolean isMultipart(HttpRequest request) throws ErrorDataDecoderException {
if (request.headers().contains(HttpHeaders.Names.CONTENT_TYPE)) {
return getMultipartDataBoundary(request.headers().get(HttpHeaders.Names.CONTENT_TYPE)) != null;
} else {
return false;
}
}

代码示例来源:origin: io.netty/netty

protected boolean isContentAlwaysEmpty(HttpMessage msg) {
if (msg instanceof HttpResponse) {
HttpResponse res = (HttpResponse) msg;
int code = res.getStatus().getCode();
// Correctly handle return codes of 1xx.
//
// See:
// - http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html Section 4.4
// - https://github.com/netty/netty/issues/222
if (code >= 100 && code <200) {
if (code == 101 && !res.headers().contains(HttpHeaders.Names.SEC_WEBSOCKET_ACCEPT)) {
// It's Hixie 76 websocket handshake response
return false;
}
return true;
}
switch (code) {
case 204: case 205: case 304:
return true;
}
}
return false;
}

代码示例来源:origin: io.netty/netty

/**
* Returns {@code true} if and only if the specified message contains the
* {@code "Expect: 100-continue"} header.
*/
public static boolean is100ContinueExpected(HttpMessage message) {
// Expect: 100-continue is for requests only.
if (!(message instanceof HttpRequest)) {
return false;
}
// It works only on HTTP/1.1 or later.
if (message.getProtocolVersion().compareTo(HttpVersion.HTTP_1_1) <0) {
return false;
}
// In most cases, there will be one or zero 'Expect' header.
String value = message.headers().get(Names.EXPECT);
if (value == null) {
return false;
}
if (Values.CONTINUE.equalsIgnoreCase(value)) {
return true;
}
// Multiple 'Expect' headers. Search through them.
return message.headers().contains(Names.EXPECT, Values.CONTINUE, true);
}

代码示例来源:origin: io.netty/netty

boolean isHixie76 = req.headers().contains(SEC_WEBSOCKET_KEY1) && req.headers().contains(SEC_WEBSOCKET_KEY2);

代码示例来源:origin: io.netty/netty

if (httpResponse.headers().contains(SpdyHttpHeaders.Names.ASSOCIATED_TO_STREAM_ID)) {
SpdySynStreamFrame spdySynStreamFrame = createSynStreamFrame(httpResponse);
currentStreamId = spdySynStreamFrame.getStreamId();

代码示例来源:origin: io.netty/netty

if (m.headers().contains(HttpHeaders.Names.CONTENT_LENGTH)) {
m.headers().set(
HttpHeaders.Names.CONTENT_LENGTH,

代码示例来源:origin: io.netty/netty

if (m.headers().contains(HttpHeaders.Names.CONTENT_LENGTH)) {
m.headers().set(
HttpHeaders.Names.CONTENT_LENGTH,

代码示例来源:origin: org.elasticsearch.plugin/transport-netty3-client

@Override
public boolean containsKey(Object key) {
return key instanceof String && httpHeaders.contains((String) key);
}

代码示例来源:origin: com.ning/async-http-client

headers.set(HttpHeaders.Names.COOKIE, COOKIEEncoder.encode(request.getCOOKIEs()));
if (config.isCompressionEnforced() && !headers.contains(HttpHeaders.Names.ACCEPT_ENCODING))
headers.set(HttpHeaders.Names.ACCEPT_ENCODING, GZIP_DEFLATE);
} else if (!headers.contains(HttpHeaders.Names.CONNECTION)) {
String cOnnectionHeaderValue= connectionHeader(allowConnectionPooling, httpVersion == HttpVersion.HTTP_1_1);
if (connectionHeaderValue != null)
if (!headers.contains(HttpHeaders.Names.HOST))
headers.set(HttpHeaders.Names.HOST, hostHeader(request, uri));
if (!headers.contains(HttpHeaders.Names.ACCEPT))
headers.set(HttpHeaders.Names.ACCEPT, "*/*");
if (!headers.contains(HttpHeaders.Names.USER_AGENT) && config.getUserAgent() != null)
headers.set(HttpHeaders.Names.USER_AGENT, config.getUserAgent());

代码示例来源:origin: com.google.code.maven-play-plugin.org.playframework/play

public static boolean accepts(HttpRequest request) {
return request.headers().contains("range");
}

代码示例来源:origin: org.elasticsearch.plugin/transport-netty3-client

private static boolean isPreflightRequest(final HttpRequest request) {
final HttpHeaders headers = request.headers();
return request.getMethod().equals(HttpMethod.OPTIONS) &&
headers.contains(HttpHeaders.Names.ORIGIN) &&
headers.contains(HttpHeaders.Names.ACCESS_CONTROL_REQUEST_METHOD);
}

代码示例来源:origin: org.elasticsearch.plugin/transport-netty3-client

private void setHeaderField(HttpResponse resp, String headerField, String value, boolean override) {
if (override || !resp.headers().contains(headerField)) {
resp.headers().add(headerField, value);
}
}

代码示例来源:origin: com.google.code.maven-play-plugin.org.playframework/play

public static boolean isModified(String etag, long last, HttpRequest nettyRequest) {
if (nettyRequest.headers().contains(IF_NONE_MATCH)) {
String browserEtag = nettyRequest.headers().get(IF_NONE_MATCH);
if (browserEtag.equals(etag)) {
return false;
}
return true;
}
if (nettyRequest.headers().contains(IF_MODIFIED_SINCE)) {
String ifModifiedSince = nettyRequest.headers().get(IF_MODIFIED_SINCE);
if (!StringUtils.isEmpty(ifModifiedSince)) {
try {
Date browserDate = Utils.getHttpDateFormatter().parse(ifModifiedSince);
if (browserDate.getTime() >= last) {
return false;
}
} catch (ParseException ex) {
Logger.warn("Can't parse HTTP date", ex);
}
return true;
}
}
return true;
}

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

private static String getTargetURI(HttpClientChannel httpClientChannel) throws URISyntaxException {
HttpChannelConfig httpClientCOnfig= httpClientChannel.getConfig();
HttpRequestForm requestForm = httpClientConfig.getRequestForm();
if (requestForm == null) {
// See RFC-7230, section 5.3.1 origin-form and section 5.3.2 absolute-form
// default to origin-form when Host header present, otherwise absolute-form
if (httpClientConfig.hasWriteHeaders() && httpClientConfig.getWriteHeaders().contains(Names.HOST)) {
requestForm = ORIGIN_FORM;
} else {
requestForm = ABSOLUTE_FORM;
}
}
QueryStringEncoder query = httpClientConfig.getWriteQuery();
ChannelAddress httpRemoteAddress = httpClientChannel.getRemoteAddress();
URI httpRemoteURI = query != null ? query.toUri() : httpRemoteAddress.getLocation();
switch (requestForm) {
case ORIGIN_FORM:
String requestPath = httpRemoteURI.getPath();
String requestQuery = httpRemoteURI.getQuery();
return (requestQuery != null) ? format("%s?%s", requestPath, requestQuery) : requestPath;
case ABSOLUTE_FORM:
default:
return httpRemoteURI.toString();
}
}
}

推荐阅读
author-avatar
随便他们好了
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有