上传本地图片单元测试报错(测试 fastDFSClient.uploadFile2 方法, 以及uploadFile 方法)
来源:7-19 后端上传图片功能开发

黑车轴
2019-08-27
上传本地图片单元测试报错
图片上传服务器已经搭建成功, 并通过测试
进行 DEBUG 断点 :
第一步将本地的图片转为MultipartFile
第二步, file.getOriginalFilename() 有值 : png . 为前面的方法写死
第三步, 此时fileExtName 已经为"" , 原因 FilenameUtils.getExtension(file.getOriginalFilename()) 返回 “”
第四步, 报错
写回答
2回答
-
请到在web环境下去调试吧,毕竟上传不同于普通业务
112019-08-27 -
慕斯6088333
2019-10-03
可以debug到apache.common中FilenameUtils.getExtension的源码
public static String getExtension(String filename) { if (filename == null) { return null; } int index = indexOfExtension(filename); if (index == -1) { return ""; } else { return filename.substring(index + 1); } }
再到indexOfExtension函数
public static int indexOfExtension(String filename) { if (filename == null) { return -1; } int extensionPos = filename.lastIndexOf(EXTENSION_SEPARATOR); int lastSeparator = indexOfLastSeparator(filename); return (lastSeparator > extensionPos ? -1 : extensionPos); }
其中EXTENSION_SEPARATOR 为 点号。
/** * The extension separator character. */ private static final char EXTENSION_SEPARATOR = '.';
所以originalFileName应该改成 “xxxx.png”, 单独的 “png”会报错
00
Netty+Spring Boot仿微信-全栈开发高性能后台及客户端
SpringBoot/Netty+MUI全栈开发 同时搞定后台+ Android&iOS
1498 学习 · 684 问题