引入依赖
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>3.8.1</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-vod</artifactId>
<version>2.15.2</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>4.3.3</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-sdk-vod-upload</artifactId>
<version>1.4.11</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.28</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20170516</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.2</version>
</dependency>
上传图片到oss
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.rw.oss.service.OssService;
import com.rw.oss.utils.ConstantPropertiesUtils;
import com.rw.oss.utils.RandomUtils;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.InputStream;
@Service
public class OssServiceImpl implements OssService {
@Override
public String uploadFileAvatar(MultipartFile file) {
String endpoint = ConstantPropertiesUtils.END_POINT;
String accessKeyId = "自己的ACCESS_KEY_ID";
String accessKeySecret ="自己的ACCESS_KEY__SECRET";
String bucketName ="自己的BUCKET_NAME";
try {
OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
InputStream inputStream = file.getInputStream();
String fileName = RandomUtils.genRandomNum();
ossClient.putObject(bucketName, fileName+".png", inputStream);
ossClient.shutdown();
String url = "https://"+bucketName+"."+endpoint+"/"+fileName+".png";
return url;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
视频点播
1、初始化服务
public static DefaultAcsClient initVodClient(String accessKeyId, String accessKeySecret) throws ClientException {
String regionId = "cn-shanghai";
DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
DefaultAcsClient client = new DefaultAcsClient(profile);
return client;
}
2、获取视频ID
public static void getPlayUrl()throws ClientException {
DefaultAcsClient client = InitObject.initVodClient("自己的ACCESS_KEY_ID", "自己的ACCESS_KEY__SECRET");
GetPlayInfoRequest request=new GetPlayInfoRequest();
GetPlayInfoResponse response = new GetPlayInfoResponse();
request.setVideoId("视频id");
response=client.getAcsResponse(request);
List<GetPlayInfoResponse.PlayInfo> playInfoList = response.getPlayInfoList();
for (GetPlayInfoResponse.PlayInfo playInfo : playInfoList) {
System.out.print("PlayInfo.PlayURL = " + playInfo.getPlayURL() + "\n");
}
System.out.print("VideoBase.Title = " + response.getVideoBase().getTitle() + "\n");
}
2、获取私密播放视频凭证
public static void getPlayAuth() throws Exception {
DefaultAcsClient client = InitObject.initVodClient("自己的ACCESS_KEY_ID", "自己的ACCESS_KEY__SECRET");
GetVideoPlayAuthResponse response = new GetVideoPlayAuthResponse();
response = getVideoPlayAuth(client);
System.out.print("PlayAuth = " + response.getPlayAuth() + "\n");
System.out.print("VideoMeta.Title = " + response.getVideoMeta().getTitle() + "\n");
System.out.print("RequestId = " + response.getRequestId() + "\n");
}
public static GetVideoPlayAuthResponse getVideoPlayAuth(DefaultAcsClient client) throws Exception {
GetVideoPlayAuthRequest request = new GetVideoPlayAuthRequest();
request.setVideoId("视频id");
return client.getAcsResponse(request);
}
详细请参考阿里云使用手册
oss详细使用手册