HttpClient 设置cookie的问题

httpclient的的版本:    

	
			org.apache.httpcomponents
			httpclient
			4.5.6
		

模拟登录成功后如下方法设置cookie   

cookieStore = new BasicCookieStore();
      
        BasicClientCookie cookie = new BasicClientCookie("sessionid", "w8d6rsyq01t7vvkigb2gd52j63hmyjpw");
        cookie.setVersion(0);
        cookie.setDomain("10.5.26.24:8000");
        cookie.setPath("/");
        cookieStore.addCookie(cookie);


// 有了cookieStore  
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
		// HttpClient
		CloseableHttpClient closeableHttpClient = httpClientBuilder.setDefaultCookieStore(cookieStore).build();

closeableHttpClient.execute(httpGet)  执行请求总是失败,然后简单粗暴可以实现

HttpGet HttpGet = new HttpGet(getUrl);
		// 设置请求和传输超时时间
		RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(30000).setConnectTimeout(30000)
				.setRedirectsEnabled(false) // 不自动重定向
				.build();
		HttpGet.setConfig(requestConfig);
		HttpGet.setHeader("Cookie","csrftoken=MgNuHIfuLkkY66wiWIyKjGqAiUXtQo4LH9zZjm9vRensEIo5YQIgjvmmhvvmWyEJ;sessionid=w8d6rsyq01t7vvkigb2gd52j63hmyjpw");

HttpGet.setHeader("Cookie","cookiekey=cookieval;cookiekey=cookieval");

耽误我两个小时模拟登录不了的问题终于解决,亲自验证有效!!!

你可能感兴趣的:(Java)