/// <summary> /// 获取视频地址 /// </summary> /// <param name="email">用户邮箱</param> /// <param name="pwd">用户密码</param> /// <param name="vid">视频ID</param> /// <param name="type">类型</param> /// <param name="IMEI">手机IMEI码</param> /// <returns></returns> public Entity.MovePlayEntity getVideoUrl(string email, string pwd, string vid, string type, string IMEI) { try { Entity.UserEntity userEntity = new Entity.UserEntity(); userEntity.vid = vid; userEntity.imei = IMEI; userEntity.email = email; userEntity.psw = pwd; userEntity.type = type; string verUrl = Utils.SecurityHelper.Decode(ApiHost) + Utils.SecurityHelper.Decode(uStr) + "/PlayVideo?mail=" + email + "&psw=" + pwd + "&vid=" + vid + "&Type=" + type + "&IMEI=" + IMEI + "&postkey=" + getThisKey("PlayVideo", userEntity); Console.WriteLine("视频地址verUrl:" + verUrl); req = (HttpWebRequest)HttpWebRequest.Create(verUrl); //设置它提交数据的方式GET req.Method = "GET"; SecurityHelper.SetHeaderValue(req.Headers, "Host", Utils.SecurityHelper.Decode(hostStr)); StreamReader sr = new StreamReader(req.GetResponse().GetResponseStream()); //获取返回的数据 string Reader = sr.ReadToEnd(); JavaScriptSerializer jss = new JavaScriptSerializer(); Entity.MovePlayEntity it = jss.Deserialize <Entity.MovePlayEntity>(Reader); return(it); } catch (Exception ex) { Logger.Singleton.Error("获取视频播放地址失败,原因为:", ex); throw ex; } }
/// <summary> /// 播放按钮点击事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Btn_Download_MouseClick(object sender, DuiMouseEventArgs e) { //播放视频 DuiButton dbn = sender as DuiButton; Entity.MovieListEntity.DataItem moveInfo = new Entity.MovieListEntity.DataItem(); if (dbn.Tag != null) { moveInfo = dbn.Tag as Entity.MovieListEntity.DataItem; } string url = ""; try { API.TvAPI tva = new API.TvAPI(); Entity.MovePlayEntity plav = tva.getVideoUrl(userEntity.email, userEntity.psw, moveInfo.videoID.ToString(), "all", userEntity.imei); Console.WriteLine(plav.toJsonString()); Console.WriteLine(plav.data); PlayerForm plF = new PlayerForm(); url = plav.data.ToString(); plF.tvUrl = plav.data.ToString(); plF.tvName = moveInfo.videoName; plF.Show(); plF.AxPlayer_PlayOrPause(url); } catch (Exception ex) { Logger.Singleton.Error("name:" + moveInfo.videoName + "---地址:" + url, ex); throw; } }