首先,先从网络上读取到文件
/**
* 从网络Url中读取文件
* @param urlStr 文件URL地址
* @throws IOException
*/
public String downLoadFromUrl(String urlStr) throws IOException{
//把地址转换成URL对象
URL url = new URL(urlStr);
//创建http链接
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//设置超时间为3秒
conn.setConnectTimeout(3*1000);
//防止屏蔽程序抓取而返回403错误
conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
//得到输入流
InputStream inputStream = conn.getInputStream();
//截取链接中的文件名
String fileName= urlStr.substring(urlStr.lastIndexOf("/")+1);
//请求OSS方法
URL resUrl = OSSUploadImage(inputStream,fileName,"imagesTest/");
return resUrl.toString();
}
然后,设置OSS参数。
/**
* 存入OSS服务器
* @param inputStream 文件流
* @param fileNme 文件名
* @param folder 文件存储文件夹
* @return OSS文件URL
*/
private URL OSSUploadImage(InputStream inputStream,String fileNme,String folder){
if(inputStream != null){
//初始化OSSClient
OSSClient ossClient=getOSSClient();
//判断文件夹是否存在,不存在则创建
createFolder(ossClient, "阿里云API的bucket名称",folder);
//请求OSS服务器
String md5key = uploadObject2OSSImage(ossClient, inputStream,fileNme, "阿里云API的bucket名称", folder);
// 传后的文件MD5数字唯一签名:40F4131427068E08451D37F02021473A
System.out.println("文件名--------------->"