上传文件到七牛云,报Unsupported or unrecognized SSL message

Blade 未结 1 956
fjy8018
fjy8018 剑者 2021-05-20 17:15

一、该问题的重现步骤是什么?

1. 客户端使用镜像:aadoptopenjdk/openjdk8-openj9:alpine-slim

2. 配置七牛云账户密码,使用华南地址

3. 应用本地启动可以生产调用七牛云接口

4. Docker打包后调用七牛云接口报:Unsupported or unrecognized SSL message


二、你期待的结果是什么?实际看到的又是什么?


容器内应用调用七牛云接口正常


三、你正在使用的是什么产品,什么版本?在什么操作系统上?


SpringBlade 3.0.1



四、请提供详细的错误堆栈信息,这很重要。

021-05-20 01:00:05 [org.springblade.xxljob.job.DataBackupJob#fileUpLoade]-[205]-[Thread-43] 上传至七牛云开始...
2021-05-20 01:00:06 [com.xxl.job.core.thread.JobThread#run]-[183]-[Thread-43] 
----------- JobThread Exception:java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at com.xxl.job.core.handler.impl.MethodJobHandler.execute(MethodJobHandler.java:29)
	at com.xxl.job.core.thread.JobThread.run(JobThread.java:152)
Caused by: com.qiniu.common.QiniuException
	at com.qiniu.http.Client.send(Client.java:259)
	at com.qiniu.http.Client.get(Client.java:141)
	at com.qiniu.storage.BucketManager.get(BucketManager.java:662)
	at com.qiniu.storage.BucketManager.buckets(BucketManager.java:92)
	at org.springblade.core.oss.QiniuTemplate.makeBucket(QiniuTemplate.java:55)
	at org.springblade.resource.template.CustomQiniuTemplate.put(CustomQiniuTemplate.java:64)
	at org.springblade.core.oss.QiniuTemplate.putFile(QiniuTemplate.java:156)
	at org.springblade.core.oss.QiniuTemplate.putFile(QiniuTemplate.java:150)
	at org.springblade.xxljob.job.DataBackupJob.fileUpLoade(DataBackupJob.java:207)
	at org.springblade.xxljob.job.DataBackupJob.lambda$dataUpload$2(DataBackupJob.java:189)
	at org.springblade.xxljob.job.DataBackupJob$$Lambda$1707/0x0000000054024cd0.accept(Unknown Source)
	at java.util.ArrayList.forEach(Unknown Source)
	at org.springblade.xxljob.job.DataBackupJob.dataUpload(DataBackupJob.java:185)
	... 6 more
Caused by: javax.net.ssl.SSLException: Unsupported or unrecognized SSL message
	at sun.security.ssl.SSLSocketInputRecord.handleUnknownRecord(Unknown Source)
	at sun.security.ssl.SSLSocketInputRecord.decode(Unknown Source)
	at sun.security.ssl.SSLTransport.decode(Unknown Source)
	at sun.security.ssl.SSLSocketImpl.decode(Unknown Source)
	at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(Unknown Source)
	at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:336)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:300)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:185)
	at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.java:224)
	at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.java:108)
	at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.java:88)
	at okhttp3.internal.connection.Transmitter.newExchange(Transmitter.java:169)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:41)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:94)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:88)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:229)
	at okhttp3.RealCall.execute(RealCall.java:81)
	at com.qiniu.http.Client.send(Client.java:256)
	... 18 more


五、若有更多详细信息,请在下面提供。


查询了解决方案,反馈都是提供方的https证书问题,实际访问的链接为https://rs-z2.qbox.me,证书是合法的

相同k8s运行环境调用网易邮件发送功能正常,DNS解析正常

1条回答
  • 2021-05-21 11:31

    这得去给七牛发issue了,springblade的封装还没有到这一步

    0 讨论(0)
提交回复