public void UploadForeverVideoTest() { var accessToken = AccessTokenContainer.GetToken(_appId); var file = @"E:\Test.mp4"; var result = MediaApi.UploadForeverVideo(accessToken, file, "测试", "测试"); Assert.IsNotNull(result.media_id); mediaId = result.media_id; }
public void AfterDeleteVideoTest() { var accessToken = AccessTokenContainer.GetAccessToken(_appId); var file = @"E:\Test.mp4"; var result = MediaApi.UploadForeverVideo(accessToken, file, "测试", "测试", 100000); Assert.IsNotNull(result.media_id); CustomApi.SendVideo(accessToken, "o3IHxjrPzMVZIJOgYMH1PyoTW_Tg", result.media_id, "测试", "测试"); MediaApi.DeleteForeverMedia(accessToken, result.media_id); }
/// <summary> /// 上传站点资源 /// </summary> /// <param name="resoureType"></param> /// <param name="file"></param> /// <param name="db"></param> /// <returns></returns> public static Site_FileBase Upload(Site_ResourceType resoureType, string fileName, byte[] fileStream, AppDbContext db, out AjaxResponse ajaxMessage) { ajaxMessage = new AjaxResponse { Success = true }; var fileSaveName = Guid.NewGuid().ToString("N") + Path.GetExtension(fileName); var tenantId = WeiChatApplicationContext.Current.TenantId; var dirName = tenantId.ToString(); var path = Path.Combine(HttpContext.Current.Server.MapPath("~/MediaFiles"), dirName); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } path = Path.Combine(path, fileSaveName); File.WriteAllBytes(path, fileStream); UploadForeverMediaResult result = null; result = resoureType.ResourceType == SiteResourceTypes.Video ? MediaApi.UploadForeverVideo(WeChatConfigManager.Current.GetAccessToken(), path, fileName, "test") : MediaApi.UploadForeverMedia(WeChatConfigManager.Current.GetAccessToken(), path); if (!string.IsNullOrWhiteSpace(result.errmsg)) { ajaxMessage.Success = false; ajaxMessage.Message = result.errmsg; } else { switch (resoureType.ResourceType) { case SiteResourceTypes.Gallery: { var pic = new Site_Image { IsFrontCover = false, MediaId = result.media_id, Name = fileName, SiteUrl = string.Format("/MediaFiles/{0}/{1}", dirName, fileSaveName), Url = result.url, ResourcesTypeId = resoureType.Id, CreateBy = HttpContext.Current.User.Identity.GetUserId(), CreateTime = DateTime.Now, TenantId = tenantId }; db.Site_Images.Add(pic); db.SaveChanges(); return(pic); } break; case SiteResourceTypes.Voice: { var voice = new Site_Voice { MediaId = result.media_id, Name = fileName, SiteUrl = string.Format("/MediaFiles/{0}/{1}", dirName, fileSaveName), Url = result.url, ResourcesTypeId = resoureType.Id, CreateBy = HttpContext.Current.User.Identity.GetUserId(), CreateTime = DateTime.Now, TenantId = tenantId }; db.Site_Voices.Add(voice); db.SaveChanges(); return(voice); } break; case SiteResourceTypes.Video: { var video = new Site_Video { MediaId = result.media_id, Name = fileName, SiteUrl = string.Format("/MediaFiles/{0}/{1}", dirName, fileSaveName), Url = result.url, ResourcesTypeId = resoureType.Id, CreateBy = HttpContext.Current.User.Identity.GetUserId(), CreateTime = DateTime.Now, TenantId = tenantId }; db.Site_Videos.Add(video); db.SaveChanges(); return(video); } break; default: ajaxMessage.Success = false; ajaxMessage.Message = "不支持上传此类型"; break; } } return(null); }