OSS,阿里云对象存储,这次项目中的图片都选择了这个存储方式。
因为做微信登录,所以在拿到用户头像的时候需要保持到oss,以免用户换头像后导致系统图片失效,影响用户的体验。
大体思路如下:
1.获取微信头像链接
2.将该图片写入本地
3.把刚刚写入的图片上传到oss
4.删除本地图片
上传oss的代码:
public static String uploadHeadImg(String url) throws Exception {
String imageName = imageName() + ".jpg"; //图片名称
String path=new File("").getAbsolutePath()+"/";<span style="white-space:pre"> </span>//这种方式可以拿到tomcat下的bin目录
client = new OSSClient(endpoint, accessKeyId, accessKeySecret); //初始化上传客户端
download(url, imageName, path); //下载图片到本地(见下面)
File file = new File(path + imageName); //根据下载的文件创建新文件
//文件不存在,则上传默认头像
if (!file.exists()) {
return ResourceUtil.getConfigByName("defaultphotourl")