我正在使用“放心”来自动化API测试。我有一个API,如果我们使用http调用该API,则服务器将返回响应代码302和位置相同的URL,但带有https。 我写了下面的代码:
RequestSpecification httprequest= RestAssured.given().relaxedHTTPSValidation();
Response response= httprequest.request(Method.GET, uri);
执行上述操作时,系统抛出错误javax.net.ssl.SSLHandshakeException
我进行了很多搜索,但没有适当的解决方法。
答案 0 :(得分:0)
我对“安心放心”感到头痛。我不确定您是否给了我们足够的资源来继续进行下去,但是据我所知,您正在使用宽松的HTTPS验证进行HTTPS调用,但是您的API正在强制执行SSL。当您通过HTTP发送时,它可以工作,因为它无论如何都不安全,也不强制执行安全性。尝试像这样为HTTPS运行它:
RequestSpecification httprequest= RestAssured.given();
Response response= httprequest.request(Method.GET, uri);
.relaxedHTTPSValidation()
仅在您有意尝试建立不安全的连接并且想要像使用自签名证书或http那样避开警告时才是必需的。