RestTemplate本身不提供直接設(shè)置Cookie有效期的方法。通常情況下,Cookie的有效期由服務(wù)器端設(shè)置,在響應(yīng)中包含Set-Cookie頭部來指定??蛻舳酥恍枰4鍯ookie并在后續(xù)的請求中發(fā)送包含該Cookie的請求頭部即可。
如果需要手動設(shè)置Cookie的有效期,可以通過以下步驟實現(xiàn):
Cookie cookie = new Cookie("cookieName", "cookieValue");
cookie.setMaxAge(3600); // 設(shè)置有效期為1小時
RestTemplate restTemplate = new RestTemplate();
restTemplate.getInterceptors().add((request, body, execution) -> {
request.getHeaders().add("Cookie", cookie.getName() + "=" + cookie.getValue());
return execution.execute(request, body);
});
需要注意的是,手動設(shè)置Cookie的有效期可能會被服務(wù)器端覆蓋,因此建議在服務(wù)器端設(shè)置Cookie的有效期。