springboot整合fastDfs文件下载报错:FdfsServerException: 错误码:22,错误信息:无效的参数!不知道是什么原因?
一、POM.XML引入的依赖
<dependency>
<groupId>com.github.tobato</groupId>
<artifactId>fastdfs-client</artifactId>
<version>1.26.1-RELEASE</version>
</dependency>
二、修改主启动类
@Import(FdfsClientConfig.class)
public class Application {...}
三、修改配置文件
fdfs:
connect-timeout: 600
tracker-list:
- ip:port
fasfDfs:
host: http:// ip:port/
四、编写工具类
@Component
public class FastDFS {
private static final Logger LOG = LoggerFactory.getLogger(FastDFS.class);
@Value("${fasfDfs.host}")
private String RES_ACCESS_URL;
@Autowired
private FastFileStorageClient fastFileStorageClient;
/**
*
* @param filePath http://ip:port/group1/M00/00/00/wKi8hFxg3LuASrJBA%20AI2-xLRyng766.jpg
*/
public void download(String filePath,MultipartFile outFile) {
String path = "group1/M00/00/00/wKi8hFxhHHaAaR6fAADIHPmOQC0207.pdf";
byte[] by = fastFileStorageClient.downloadFile("group1", path, null);
try {
IOUtils.write(by, new FileOutputStream("C:\\下载.jpg"));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 封装文件访问路径
*/
private String getResAccessUrl(StorePath storePath) {
String fileUrl = RES_ACCESS_URL + storePath.getFullPath();
return fileUrl;
}
}
原因分析:
String path = "group1/M00/00/00/wKi8hFxhHHaAaR6fAADIHPmOQC0207.pdf";
path输入有误,正确的值是去掉group1,即path = "M00/00/00/wKi8hFxhHHaAaR6fAADIHPmOQC0207.pdf";
byte[] by = fastFileStorageClient.downloadFile("group1", path, null);
参考博客:https://blog.csdn.net/huhu518420/article/details/83419187