【发布时间】:2016-02-03 19:39:42
【问题描述】:
我需要在需要身份验证的 URL 上调用 GET 请求。在做 curl 时,我可以通过简单地传递记住我和 jSession cookie 的值来解决这个问题......
curl -v -b "mysite_remember_me=MToxNDU5MzcwODg1MDU1Ojk0YmYwMjI1NDI5MTZZkMGM2NzRkMzkx;JSESSIONID=2FDB2480CD28D99147C281.app1" "www.mysite.com/doSomething/play/416?confirmed=false&contentType=2"
但是当我尝试像这样在 Java 中复制它时......
HttpMethod method = new GetMethod("www.mysite.com/doSomething/play/416?confirmed=false&contentType=2&source=sourceSku")
org.apache.commons.httpclient.Cookie cookie1 = new
org.apache.commons.httpclient.Cookie();
org.apache.commons.httpclient.Cookie cookie2 = new
org.apache.commons.httpclient.Cookie();
cookie1.setName("mysite_remember_me");
cookie1.setValue("MToxNDU5MzcwODg1MDU1Ojk0YmYwMjI1NDI5MTZZkMGM2NzRkMzkx");
cookie2.setName("JSESSIONID");
cookie2.setValue("2FDB2480CD28D99147C281.app1");
httpClient.getState().addCookie(cookie1);
httpClient.getState().addCookie(cookie2);
responseCode = httpClient.executeMethod(method)
我得到了这个异常...
Caught: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1747)
【问题讨论】:
标签: java curl cookies apache-commons-httpclient