SSLPeerUnverifiedException:"узел не аутентифицирован" при использовании Groovy RestClient с ignoreSSLIssues()

Я пишу интеграционный тест для моей конечной точки отдыха и выбрал у Groovy RestClient. Мой остальной вызов на "HTTPS", и я столкнулся с исключениями SSL. Разбираясь в этом подробнее, я был рад узнать о методе ignoreSSLIssues() ( http://groovy.codehaus.org/modules/http-builder/doc/ssl.html). Поскольку это доступно в версии HttpBuilder версии 0.7.1, я обновил этот jar и некоторые зависимые jar. Так что с этим на месте, в соответствии с документом, я надеялся, что приведенный ниже код будет работать -

def httpBuilder = new HTTPBuilder('baseurl')
httpBuilder.ignoreSSLIssues()
def resp = httpBuilder.get(path : 'restPath')
println resp

Но это все еще вызывает javax.net.ssl.SSLPeerUnverifiedException: одноранговый узел не аутентифицирован.

Любая помощь по этому вопросу приветствуется.

Благодарю.

1 ответ

Просто столкнулся с этим вопросом. Вы также получаете эту обманчивую ошибку, если используете исходящий прокси и не настроили класс HTTPBuilder для его явного использования.

Вам нужно установить метод setProxy() HTTPBuilder. ОПЦИИ JVM, такие как -Dhttp.proxyHost, по-видимому, не соблюдаются HTTPBuilder по какой-либо причине. Моя версия выглядит примерно так:

import groovyx.net.http.HTTPBuilder
import static groovyx.net.http.Method.HEAD

def http = new HTTPBuilder( 'https://www.dev.java.net/' )

http.setProxy("my.proxy.com", 8080, "http")
http.ignoreSSLIssues()

def status = http.request( HEAD ) {
    response.success = { it.status }
}
Другие вопросы по тегам