/// <summary> /// 根据id查询视频 /// </summary> /// <param name="videoId">Video的唯一标识</param> /// <returns> /// Video 包含id,name,size,type,status,duration,catalogId,catalogName,VideoEmbedCode列表。 /// </returns> public Video Get(Int32 videoId) { var qs = new QueryString(); qs.Add("videoId", videoId.ToString()); var getVideo = client.HttpGet("/video/get.api", qs); var jo = JObject.Parse(getVideo); if (jo["statusCode"].ToString().CompareTo("0") == 0) { var video = new Video(); video.CatalogId = System.Int32.Parse(jo["catalogId"].ToString()); video.CatalogName = jo["catalogName"].ToString(); video.Name = jo["name"].ToString(); video.Size = long.Parse(jo["size"].ToString()); video.Status = jo["status"].ToString(); video.Type = jo["type"].ToString(); video.Duration = long.Parse(jo["duration"].ToString()); var embedCodes = new List<VideoEmbedCode>(); foreach (var jObj in jo["embedCodes"]) { var embedCode = new VideoEmbedCode(); embedCode.AutoAdaptionCode = jObj["autoAdaptionCode"].ToString(); embedCode.Clarity = jObj["clarity"].ToString(); embedCode.FilePath = jObj["filePath"].ToString(); embedCode.FlashCode = jObj["flashCode"].ToString(); embedCode.Html5Code = jObj["html5Code"].ToString(); embedCode.PortableCode = jObj["portableCode"].ToString(); embedCode.Resolution = jObj["resolution"].ToString(); embedCodes.Add(embedCode); } video.EmbedCodes = embedCodes; return video; } else { throw new PispowerAPIException(System.Int32.Parse(jo["statusCode"].ToString()), jo["message"].ToString()); } }
/// <summary> /// 上传一个视频 /// </summary> /// <param name="request"></param> public Video Upload(VideoUploadRequest request) { var qs = new QueryString(); qs.Add("name", request.Name); if (null != request.Description && !"".Equals(request.Description)) { qs.Add("description", request.Description); } if (request.CatalogId > 0) { qs.Add("catalogId", request.CatalogId.ToString()); } using (var fs = File.OpenRead(request.FileInfo.FullName)) { var uploadVideo = client.HttpUpload("/video/upload.api", qs, fs); var jo = JObject.Parse(uploadVideo); if (jo["statusCode"].ToString().CompareTo("0") == 0) { var video = new Video(); video.CatalogId = System.Int32.Parse(jo["catalogId"].ToString()); video.CatalogName = jo["catalogName"].ToString(); video.Name = jo["name"].ToString(); video.Size = long.Parse(jo["size"].ToString()); video.Status = jo["status"].ToString(); video.Type = jo["type"].ToString(); video.Duration = long.Parse(jo["duration"].ToString()); var embedCodes = new List<VideoEmbedCode>(); foreach (var jObj in jo["embedCodes"]) { var embedCode = new VideoEmbedCode(); embedCode.AutoAdaptionCode = jObj["autoAdaptionCode"].ToString(); embedCode.Clarity = jObj["clarity"].ToString(); embedCode.FilePath = jObj["filePath"].ToString(); embedCode.FlashCode = jObj["flashCode"].ToString(); embedCode.Html5Code = jObj["html5Code"].ToString(); embedCode.PortableCode = jObj["portableCode"].ToString(); embedCode.Resolution = jObj["resolution"].ToString(); embedCodes.Add(embedCode); } video.EmbedCodes = embedCodes; return video; } else { throw new PispowerAPIException(System.Int32.Parse(jo["statusCode"].ToString()), jo["message"].ToString()); } } }