项目场景:
使用spring boot 练习文件上传
问题描述
使用ajax技术上传文件返回走的是成功的回调函数通过弹窗显示,表面文件上传成功,但是minio里并没有具体的文件上传上去,后台报错信息如下
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at okhttp3.internal.platform.Platform.connectSocket(Platform.java:124)
at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.java:220)
原因分析:
继续看后台报错信息,最上面的报错信息显示如下,看到了minio上传的地址
java.net.ConnectException: Failed to connect to /192.168.1.106:9000
at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.java:222)
at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:146)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:186)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:121)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:100)
然后看一下自己的minion上传地址
很明显这里上传地址不对了一个是192.168.1.106:9000 另一个是192.168.1.104:9000,两个minio上传地址不一样,导致文件上传成功了,但是上传不到minio里
解决方案:
回到项目里修改yml配置文件,将minio上传的地址改成minio对应的地址即可,minio启动时上传地址可能会变化,需要多看一些实时的去修改配置文件