@Test public void secureResponseCachingAndRedirects() throws IOException {
server.useHttps(sslClient.socketFactory, false);
server.enqueue(new MockResponse()
.addHeader("Last-Modified: " + formatDate(-1, TimeUnit.HOURS))
.addHeader("Expires: " + formatDate(1, TimeUnit.HOURS))
.setResponseCode(HttpURLConnection.HTTP_MOVED_PERM)
.addHeader("Location: /foo"));
server.enqueue(new MockResponse()
.addHeader("Last-Modified: " + formatDate(-1, TimeUnit.HOURS))
.addHeader("Expires: " + formatDate(1, TimeUnit.HOURS))
.setBody("ABC"));
server.enqueue(new MockResponse()
.setBody("DEF"));
client = client.newBuilder()
.sslSocketFactory(sslClient.socketFactory, sslClient.trustManager)
.hostnameVerifier(NULL_HOSTNAME_VERIFIER)
.build();
Response response1 = get(server.url("/"));
assertEquals("ABC", response1.body().string());
assertNotNull(response1.handshake().cipherSuite());
// Cached!
Response response2 = get(server.url("/"));
assertEquals("ABC", response2.body().string());
assertNotNull(response2.handshake().cipherSuite());
assertEquals(4, cache.requestCount()); // 2 direct + 2 redirect = 4
assertEquals(2, cache.hitCount());
assertEquals(response1.handshake().cipherSuite(), response2.handshake().cipherSuite());
}
CacheTest.java 文件源码
java
阅读 24
收藏 0
点赞 0
评论 0
项目:GitHub
作者:
评论列表
文章目录