赞
踩
今天尝试用Java去访问一个https接口,但抛出下面的异常:
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
(个人发现)建议如果是ssl双向认证的,先看看是不是客户端证书文件路径获取有问题(debug一下,看看是不是null),导致没携带证书访问https服务器,也会报这个handshake_failure错误。
遇到问题首先去Google,然后在javax.net.ssl.SSLException: Received fatal alert: protocol_version
找到了问题原因:客户端和服务端SSL协议版本不一致。
及解决方案:需要设置Java客户端https.protocols环境变量,使用服务端支持的SSL协议版本。
但经过我一步步踩坑,到最终解决问题,我发现问题的原因并不完全和上面描述的一
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。