io.netty.handler.codec.http.cookie.Cookie.maxAge()方法的使用及代码示例

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

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

Cookie.maxAge介绍

[英]Returns the maximum age of this Cookie in seconds or Cookie#UNDEFINED_MAX_AGE if unspecified
[中]返回此Cookie的最长时间(秒),如果未指定,则返回Cookie#UNDEFINED_MAX_age

代码示例

代码示例来源:origin: AsyncHttpClient/async-http-client

private boolean hasCookieExpired(Cookie cookie, long whenCreated) {
 // if not specify max-age, this cookie should be discarded when user agent is to be closed, but it is not expired.
 if (cookie.maxAge() == Cookie.UNDEFINED_MAX_AGE)
  return false;
 if (cookie.maxAge() <= 0)
  return true;
 if (whenCreated > 0) {
  long deltaSecond = (System.currentTimeMillis() - whenCreated) / 1000;
  return deltaSecond > cookie.maxAge();
 } else
  return false;
}

代码示例来源:origin: micronaut-projects/micronaut-core

@Override
public long getMaxAge() {
  return nettyCookie.maxAge();
}

代码示例来源:origin: spring-projects/spring-framework

@Override
public MultiValueMap<String, ResponseCookie> getCookies() {
  MultiValueMap<String, ResponseCookie> result = new LinkedMultiValueMap<>();
  this.response.cookies().values().stream().flatMap(Collection::stream)
      .forEach(cookie ->
        result.add(cookie.name(), ResponseCookie.from(cookie.name(), cookie.value())
            .domain(cookie.domain())
            .path(cookie.path())
            .maxAge(cookie.maxAge())
            .secure(cookie.isSecure())
            .httpOnly(cookie.isHttpOnly())
            .build()));
  return CollectionUtils.unmodifiableMultiValueMap(result);
}

代码示例来源:origin: AsyncHttpClient/async-http-client

private void add(String requestDomain, String requestPath, Cookie cookie) {
 AbstractMap.SimpleEntry<String, Boolean> pair = cookieDomain(cookie.domain(), requestDomain);
 String keyDomain = pair.getKey();
 boolean hostOnly = pair.getValue();
 String keyPath = cookiePath(cookie.path(), requestPath);
 CookieKey key = new CookieKey(cookie.name().toLowerCase(), keyDomain, keyPath);
 if (hasCookieExpired(cookie, 0))
  cookieJar.remove(key);
 else
  cookieJar.put(key, new StoredCookie(cookie, hostOnly, cookie.maxAge() != Cookie.UNDEFINED_MAX_AGE));
}

代码示例来源:origin: AsyncHttpClient/async-http-client

@Test
public void testCookieParseExpires() {
 // e.g. "Tue, 27 Oct 2015 12:54:24 GMT";
 SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
 sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
 Date date = new Date(System.currentTimeMillis() + 60000);
 final String cookieDef = String.format("efmembercheck=true; expires=%s; path=/; domain=.eclipse.org", sdf.format(date));
 HttpHeaders responseHeaders = new DefaultHttpHeaders().add(SET_COOKIE, cookieDef);
 NettyResponse response = new NettyResponse(new NettyResponseStatus(null, null, null), responseHeaders, null);
 List<Cookie> cookies = response.getCookies();
 assertEquals(cookies.size(), 1);
 Cookie cookie = cookies.get(0);
 assertTrue(cookie.maxAge() >= 58 && cookie.maxAge() <= 60);
}

代码示例来源:origin: org.springframework/spring-web

@Override
public MultiValueMap<String, ResponseCookie> getCookies() {
  MultiValueMap<String, ResponseCookie> result = new LinkedMultiValueMap<>();
  this.response.cookies().values().stream().flatMap(Collection::stream)
      .forEach(cookie ->
        result.add(cookie.name(), ResponseCookie.from(cookie.name(), cookie.value())
            .domain(cookie.domain())
            .path(cookie.path())
            .maxAge(cookie.maxAge())
            .secure(cookie.isSecure())
            .httpOnly(cookie.isHttpOnly())
            .build()));
  return CollectionUtils.unmodifiableMultiValueMap(result);
}

代码示例来源:origin: AsyncHttpClient/async-http-client

@Test
 public void testCookieParseWeirdExpiresValue() {
  final String cookieDef = "efmembercheck=true; expires=60; path=/; domain=.eclipse.org";
  HttpHeaders responseHeaders = new DefaultHttpHeaders().add(SET_COOKIE, cookieDef);
  NettyResponse response = new NettyResponse(new NettyResponseStatus(null, null, null), responseHeaders, null);

  List<Cookie> cookies = response.getCookies();
  assertEquals(cookies.size(), 1);

  Cookie cookie = cookies.get(0);
  assertEquals(cookie.maxAge(), Long.MIN_VALUE);
 }
}

代码示例来源:origin: AsyncHttpClient/async-http-client

@Test
public void testCookieParseMaxAge() {
 final String cookieDef = "efmembercheck=true; max-age=60; path=/; domain=.eclipse.org";
 HttpHeaders responseHeaders = new DefaultHttpHeaders().add(SET_COOKIE, cookieDef);
 NettyResponse response = new NettyResponse(new NettyResponseStatus(null, null, null), responseHeaders, null);
 List<Cookie> cookies = response.getCookies();
 assertEquals(cookies.size(), 1);
 Cookie cookie = cookies.get(0);
 assertEquals(cookie.maxAge(), 60);
}

代码示例来源:origin: dreamhead/moco

@Override
  public void run() throws IOException {
    org.apache.http.HttpResponse response = helper.getResponse(root());
    String value = response.getFirstHeader(HttpHeaders.SET_COOKIE).getValue();
    Cookie decodeCookie = ClientCookieDecoder.STRICT.decode(value);
    assertThat(decodeCookie.maxAge(), is(3600L));
  }
});

代码示例来源:origin: line/armeria

private MultiValueMap<String, ResponseCookie> initCookies() {
  final MultiValueMap<String, ResponseCookie> cookies = new LinkedMultiValueMap<>();
  headers.getAll(HttpHeaderNames.SET_COOKIE)
      .stream()
      .map(ClientCookieDecoder.LAX::decode)
      .forEach(c -> cookies.add(c.name(), ResponseCookie.from(c.name(), c.value())
                               .maxAge(c.maxAge())
                               .domain(c.domain())
                               .path(c.path())
                               .secure(c.isSecure())
                               .httpOnly(c.isHttpOnly())
                               .build()));
  return cookies;
}

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

harCookie.setPath(cookie.path());
harCookie.setSecure(cookie.isSecure());
if (cookie.maxAge() > 0) {
  expires.setTimeInMillis(expires.getTimeInMillis() + TimeUnit.MILLISECONDS.convert(cookie.maxAge(), TimeUnit.SECONDS));

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

if (cookie.maxAge() != Long.MIN_VALUE) {
  add(buf, CookieHeaderNames.MAX_AGE, cookie.maxAge());
  Date expires = new Date(cookie.maxAge() * 1000 + System.currentTimeMillis());
  buf.append(CookieHeaderNames.EXPIRES);
  buf.append((char) HttpConstants.EQUALS);

代码示例来源:origin: dreamhead/moco

@Test
public void should_set_and_recognize_cookie_with_max_age() throws IOException {
  runWithConfiguration("cookie.json");
  Cookie decodeCookie = getCookie("/cookie-with-max-age");
  assertThat(decodeCookie.name(), is("login"));
  assertThat(decodeCookie.value(), is("true"));
  assertThat(decodeCookie.maxAge(), is(3600L));
}

代码示例来源:origin: lets-blade/blade

/**
 * Parse netty cookie to {@link Cookie}.
 *
 * @param nettyCookie netty raw cookie instance
 */
private void parseCookie(io.netty.handler.codec.http.cookie.Cookie nettyCookie) {
  var cookie = new Cookie();
  cookie.name(nettyCookie.name());
  cookie.value(nettyCookie.value());
  cookie.httpOnly(nettyCookie.isHttpOnly());
  cookie.path(nettyCookie.path());
  cookie.domain(nettyCookie.domain());
  cookie.maxAge(nettyCookie.maxAge());
  this.cookies.put(cookie.name(), cookie);
}

代码示例来源:origin: lets-blade/blade

/**
 * Parse netty cookie to {@link Cookie}.
 *
 * @param nettyCookie netty raw cookie instance
 */
private void parseCookie(io.netty.handler.codec.http.cookie.Cookie nettyCookie) {
  var cookie = new Cookie();
  cookie.name(nettyCookie.name());
  cookie.value(nettyCookie.value());
  cookie.httpOnly(nettyCookie.isHttpOnly());
  cookie.path(nettyCookie.path());
  cookie.domain(nettyCookie.domain());
  cookie.maxAge(nettyCookie.maxAge());
  this.cookies.put(cookie.name(), cookie);
}

代码示例来源:origin: line/armeria

assertThat(setCookie.domain()).isEqualTo("http://localhost");
assertThat(setCookie.path()).isEqualTo("/");
assertThat(setCookie.maxAge()).isEqualTo(Duration.ofSeconds(60).getSeconds());
assertThat(setCookie.isSecure()).isTrue();
assertThat(setCookie.isHttpOnly()).isTrue();

代码示例来源:origin: com.github.mjeanroy/rest-assert-core

@Override
public Long getMaxAge() {
  return cookie.maxAge();
}

代码示例来源:origin: pmlopes/yoke

@Override
public long maxAge() {
  return nettyCookie.maxAge();
}

代码示例来源:origin: vmware/admiral

private void assertAuthCookie(Operation op) {
  String cookieHeader = op.getResponseHeader(Operation.SET_COOKIE_HEADER);
  Cookie cookie = ClientCookieDecoder.LAX.decode(cookieHeader);
  assertEquals(AuthenticationConstants.REQUEST_AUTH_TOKEN_COOKIE, cookie.name());
  assertEquals("", cookie.value());
  assertEquals(0, cookie.maxAge());
}

代码示例来源:origin: HotelsDotCom/styx

private static ResponseCookie convert(Cookie cookie) {
  String value = cookie.wrap() ? quote(cookie.value()) : cookie.value();
  return responseCookie(cookie.name(), value)
      .domain(cookie.domain())
      .path(cookie.path())
      .maxAge(cookie.maxAge())
      .httpOnly(cookie.isHttpOnly())
      .secure(cookie.isSecure())
      .build();
}

相关文章