spring boot實現(xiàn)阿里云視頻點播上傳視頻功能(復(fù)制粘貼即可)
目錄:
1.spring boot實現(xiàn)阿里云視頻點播上傳視頻(復(fù)制粘貼即可)
2.spring boot 實現(xiàn)阿里云視頻點播 --刪除視頻
準(zhǔn)備工作:
阿里云地址: https://www.aliyun.com/
登錄阿里云,確保賬戶有余額,有幾毛錢就夠了,開發(fā)學(xué)習(xí)基本不花錢。
2.進入阿里云開通視頻點播功能
3.獲取阿里云密鑰
代碼編寫:
目錄結(jié)構(gòu):
application.properties
# 服務(wù)端口server.port=8003# 服務(wù)名spring.application.name=vod# 環(huán)境設(shè)置:dev、test、prodspring.profiles.active=dev#阿里云 vod#不同的服務(wù)器,地址不同aliyun.vod.file.keyid=自己的密鑰idaliyun.vod.file.keysecret=自己的密鑰# 最大上傳單個文件大小:默認(rèn)1Mspring.servlet.multipart.max-file-size=1024MB# 最大置總上傳的數(shù)據(jù)大小 :默認(rèn)10Mspring.servlet.multipart.max-request-size=1024MB
ConstantVodUtils ,獲取配置文件的配置信息
@Componentpublic class ConstantVodUtils implements InitializingBean { @Value('${aliyun.vod.file.keyid}') private String keyid; @Value('${aliyun.vod.file.keysecret}') private String keysecret; public static String ACCESS_KEY_SECRET; public static String ACCESS_KEY_ID; @Override public void afterPropertiesSet() throws Exception { ACCESS_KEY_ID = keyid; ACCESS_KEY_SECRET = keysecret; }}
VodController
@RestController@RequestMapping('/vod/video')@CrossOriginpublic class VodController { @Autowired private VodService vodService; //上傳視頻到阿里云 @PostMapping('uploadAlyiVideo') public String uploadAlyiVideo(MultipartFile file) { //返回上傳視頻id String videoId = vodService.uploadVideoAly(file); return videoId; }}
service
public interface VodService { //上傳視頻到阿里云 String uploadVideoAly(MultipartFile file);}
@Servicepublic class VodServiceImpl implements VodService { @Override public String uploadVideoAly(MultipartFile file) { try { //accessKeyId, accessKeySecret //fileName:上傳文件原始名稱 String fileName = file.getOriginalFilename(); //title:上傳之后顯示名稱 String title = fileName.substring(0, fileName.lastIndexOf('.')); //inputStream:上傳文件輸入流 InputStream inputStream = file.getInputStream(); UploadStreamRequest request = new UploadStreamRequest(ConstantVodUtils.ACCESS_KEY_ID,ConstantVodUtils.ACCESS_KEY_SECRET, title, fileName, inputStream); UploadVideoImpl uploader = new UploadVideoImpl(); UploadStreamResponse response = uploader.uploadStream(request); String videoId = null; if (response.isSuccess()) { videoId = response.getVideoId(); } else { //如果設(shè)置回調(diào)URL無效,不影響視頻上傳,可以返回VideoId同時會返回錯誤碼。其他情況上傳失敗時,VideoId為空,此時需要根據(jù)返回錯誤碼分析具體錯誤原因 videoId = response.getVideoId(); } return videoId; }catch(Exception e) { e.printStackTrace(); return null; } }}
界面簡單編寫
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Title</title></head><body><form method='post' enctype='multipart/form-data' action='http://127.0.0.1:8003/vod/video/uploadAlyiVideo'> <input type='file' name='file'/> <input type='submit' value='提交'/></form></body></html>
上傳成功后返回視頻id
且在阿里云點播控制臺看到視頻已經(jīng)上傳
到此這篇關(guān)于spring boot實現(xiàn)阿里云視頻點播上傳視頻(復(fù)制粘貼即可)的文章就介紹到這了,更多相關(guān)spring boot阿里云視頻點播上傳視頻內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. ajax請求后臺得到j(luò)son數(shù)據(jù)后動態(tài)生成樹形下拉框的方法2. phpstudy apache開啟ssi使用詳解3. JSP之表單提交get和post的區(qū)別詳解及實例4. Xml簡介_動力節(jié)點Java學(xué)院整理5. 詳解瀏覽器的緩存機制6. .Net Core和RabbitMQ限制循環(huán)消費的方法7. jsp實現(xiàn)登錄驗證的過濾器8. jsp文件下載功能實現(xiàn)代碼9. ASP動態(tài)網(wǎng)頁制作技術(shù)經(jīng)驗分享10. 存儲于xml中需要的HTML轉(zhuǎn)義代碼
