使用RestTemplate设置安全cookie
我正在尝试使用RestTemplate和Jackson json转换器调用Restful
JSON服务。现在,为了调用该服务,我需要传递一个安全性cookie。我可以通过使用URLConnection来实现(请参见下面的代码)
URL url= new URL("https://XXXXXXXX");URLConnection yc = url.openConnection();
yc.setRequestProperty("SecurityCookie", ssocookie.getValue());</code>
RestTemplate中与此并行的是什么?这是我一直在使用RestTemplate调用Restful Service的代码片段:
RestTemplate rest = new RestTemplate();  InputBean input = new InputBean();  
input.setResource("SampleResource");  
HttpEntity<InputBean > entity = new HttpEntity<InputBean>(input);  
ResponseEntity<OutputBean> response1 = rest.postForEntity(
    "https://XXXXXXXXX", 
    entity, OutputBean.class);</code>
我无法弄清楚在使用RestTemplate调用服务时如何传递安全cookie。任何帮助都会很棒。
回答:
您可以访问底层HttpURLConnection使用RestTemplate的布线您RestTemplate用自定义了ClientHttpRequestFactory,它可以让你访问套头,性能等基础连接的ClientHttpRequestFactory用于通过RestTemplate创建新的连接时。
特别是,您可以扩展SimpleClientHttpRequestFactory实现并覆盖prepareConnection()方法:
public class YourClientHttpRequestFactory extends SimpleClientHttpRequestFactory {  @Override
   protected void prepareConnection(HttpURLConnection connection, String httpMethod) {
     connection.setRequestProperty("SecurityCookie", ssocookie.getValue());
   }
}
以上是 使用RestTemplate设置安全cookie 的全部内容, 来源链接: utcz.com/qa/434799.html







