先将图片上传到服务器,再将服务器上的图片传入oss中 小程序js //启动上传等待中... wx.showToast({ title: '正在上传...', icon: 'loading', mask: true, duration: 10000 }) //上传图片 wx.uploadFile({ url: '**
先将图片上传到服务器,再将服务器上的图片传入oss中
小程序js
//启动上传等待中... wx.showToast({ title: '正在上传...', icon: 'loading', mask: true, duration: 10000 }) //上传图片 wx.uploadFile({ url: '***********',//上传的路径(Java后台路径) filePath: tempFilePaths[0], name: 'file', success: function (res) { console.log(res.data)//oss图片路径 wx.showToast({ title: "上传成功", icon: 'success', duration: 1000 }) }, fail: function ({ errMsg }) { wx.showToast({ title: "上传失败", duration: 1000 }) }, })
Java后台
@RequestMapping("/programImg") public @ResponseBody String programImg(@RequestParam(required = false) MultipartFile file,HttpServletRequest request) { File targetFile=null; String str="";//返回存储路径 String fileName=file.getOriginalFilename();//获取文件名加后缀 if(fileName!=null&&fileName!=""){ String returnUrl = ”*****“;//服务器存储路径 String fileF = FilenameUtils.getExtension(file.getOriginalFilename());//文件后缀 fileName=”*****************“;//新的文件名 //先判断文件是否存在,获取文件夹路径 File file1 =new File(returnUrl); //如果文件夹不存在则创建 if(!file1 .exists() && !file1 .isDirectory()){ file1 .mkdir(); } //将图片存入文件夹 targetFile = new File(file1, fileName); try { //将上传的文件写到服务器上指定的文件。 file.transferTo(targetFile); String gifName = "******";//图片oss上传根目录 String url=gifName+"/"+fileName; putObject(targetFile, gifName,fileName); str=““;//oss图片路径 } catch (Exception e) { e.printStackTrace(); } } return str; } public static void putObject(File file,String fileName,String fileName){ OSSClient ossClient=null; try { //初始化oss ossClient = ossIni(); //上传路径 String route=fileName+"/"+fileName; //上传图片 img-program--Bucket名称 ossClient.putObject("img-program",route,file); } catch (Exception e) { if (ossClient!=null) { ossClient.shutdown(); } e.printStackTrace(); } ossClient.shutdown(); } private static OSSClient ossIni(){ OSSClient ossClient = null; try { ossClient = new OSSClient(ENDPOINT,KEY_ID,KEY_SECRET); System.out.println("oss 初始化成功"); } catch (Exception e) { e.printStackTrace(); } return ossClient; } public static final String ENDPOINT="****************"; public static final String KEY_ID="*****************"; public static final String KEY_SECRET="****************";
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。