public async System.Threading.Tasks.Task <VideoAutherOutput> CreateUploadVideoRequestAsync(VodUploadDto input) { CreateUploadVideoRequest request = new CreateUploadVideoRequest { Title = input.Title, FileName = input.FileName, CateId = input.CateId }; var videoInfo = await _videoResourceRepository.FirstOrDefaultAsync(a => a.CateName == input.Title && a.CateId == input.CateId); if (videoInfo != null) { throw new UserFriendlyException($"{videoInfo.CateName}下已经有包含的同名{input.Title},请重命名后再次上传"); } var vodClient = _aliyunVodManager.InitVodClient(); CreateUploadVideoResponse data = vodClient.GetAcsResponse(request); var response = new VideoAutherOutput() { UploadAuth = data.UploadAuth, VideoId = data.VideoId, UploadAddress = data.UploadAddress }; return(response); }
/// <summary> /// 上传视频获取上传凭证和地址 /// </summary> /// <param name="title">视频名称</param> /// <param name="fileName">视频地址(需带后缀名)</param> public static void GetVideoUploadParameter(string title, string fileName) { try { // 构造请求 CreateUploadVideoRequest request = new CreateUploadVideoRequest(); request.Title = title; request.FileName = fileName; // request.Tags = "tags1,tags2"; // request.Description = "this is a sample description"; // request.CoverURL = coverUrl; // request.CateId = -1; // request.TemplateGroupId = "278840921dee4963bb5862b43aeb2273"; // 初始化客户端 //DefaultAcsClient client = InitVodClient(); // 发起请求,并得到响应结果 CreateUploadVideoResponse response = client.GetAcsResponse(request); //视频ID videoId = response.VideoId; //上传凭证 videoToken = response.UploadAuth; //上传地址 videoAddress = response.UploadAddress; } catch (ServerException ex) { Console.WriteLine(ex.ToString()); } catch (ClientException ex) { Console.WriteLine(ex.ToString()); } }
public static CreateUploadVideoResponse Unmarshall(UnmarshallerContext context) { CreateUploadVideoResponse createUploadVideoResponse = new CreateUploadVideoResponse(); createUploadVideoResponse.HttpResponse = context.HttpResponse; createUploadVideoResponse.RequestId = context.StringValue("CreateUploadVideo.RequestId"); createUploadVideoResponse.VideoId = context.StringValue("CreateUploadVideo.VideoId"); createUploadVideoResponse.UploadAddress = context.StringValue("CreateUploadVideo.UploadAddress"); createUploadVideoResponse.UploadAuth = context.StringValue("CreateUploadVideo.UploadAuth"); return(createUploadVideoResponse); }
private CreateUploadVideoResponseResult GetUploadAddress(RecordVideoInfo info) { DefaultAcsClient client = InitVodClient(); CreateUploadVideoResponse response = client.GetAcsResponse(CreateUploadVideoRequest(info)); return(new CreateUploadVideoResponseResult() { CreateUploadVideoResponse = response, UploadAddressInfo = JsonConvert.DeserializeObject <UploadAddressInfo>(Encoding.UTF8.GetString(Convert.FromBase64String(response.UploadAddress))), UploadAuth = JsonConvert.DeserializeObject <UploadAuth>(Encoding.UTF8.GetString(Convert.FromBase64String(response.UploadAuth))) }); }
/// <summary> /// 获取视频上传地址和凭证 /// </summary> /// <param name="request"></param> /// <returns></returns> public CreateUploadVideoResponse CreateUploadVideo(CreateUploadVideoRequest request) { CreateUploadVideoResponse response = new CreateUploadVideoResponse(); try { response = acsClient.GetAcsResponse(request); } catch (Exception ex) { } return(response); }