首页 > 其他 > 详细

视频返回并可以直接播放

时间:2020-11-27 11:45:58      阅读:49      评论:0      收藏:0      [点我收藏+]
/// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public HttpResponseMessage Getvoid()
        {
            HttpResponseMessage resp = new HttpResponseMessage();
            
            dynamic ObjJson = new ExpandoObject();
            try
            {
                string FAwemeId = HttpContext.Current.Request["FAwemeId"];
                if (string.IsNullOrEmpty(FAwemeId))
                {
                    ObjJson.state = true;
                    ObjJson.msg = "FAwemeId不可为空";
                    ObjJson.code = 500;
                    resp.Content = new StringContent(JsonConvert.SerializeObject(ObjJson), System.Text.Encoding.UTF8, "application/json");
                    return resp;
                }
                else
                {
                    //模拟请求
                    //这是现在打开的数据
                    //string url = "";
                    //换取内容
                    string dizhi = "";
                    string url = ;
                    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                    Stream myResponseStream = response.GetResponseStream();
                    StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
                    //获取到JSON
                    string Responsestring = myStreamReader.ReadToEnd();
                    myStreamReader.Close();
                    myResponseStream.Close();



                    JObject ResponsetData = (JObject)JsonConvert.DeserializeObject(Responsestring);
                    //这里注意是否全部为单值  需要对 2个0 做长度判断
                    string UrlPlay = ResponsetData["item_list"][0]["video"]["play_addr"]["url_list"][0].ToString();

                    //模拟请求视频
                    HttpWebRequest requestUrl = (HttpWebRequest)WebRequest.Create(UrlPlay);
                    HttpWebResponse responseUrl = (HttpWebResponse)requestUrl.GetResponse();




                    //Stream myResponseStreamUrl = responseUrl.GetResponseStream();
                    ////StreamReader myStreamReaderUrl = new StreamReader(myResponseStreamUrl, Encoding.GetEncoding("utf-8"));
                    //////获取到JSON
                    ////string ResponsestringUrl = myStreamReaderUrl.ReadToEnd();
                    ////myStreamReaderUrl.Close();
                    //myResponseStreamUrl.Close();


                    string urlRe = responseUrl.ResponseUri.ToString();

                    //模拟请求视频
                    HttpWebRequest requesturlRe = (HttpWebRequest)WebRequest.Create(urlRe);
                    HttpWebResponse responseurlRe = (HttpWebResponse)requesturlRe.GetResponse();
                    Stream myResponseStreamUrl = responseurlRe.GetResponseStream();

                    resp.Content = new StreamContent(myResponseStreamUrl);
                    ////resp.Content = new System.Net.Http.PushStreamContent(send, new System.Net.Http.Headers.MediaTypeHeaderValue("video/mp4"));



                    //var video = new VideoStream(UrlPlay);
                    //Action<Stream, HttpContent, TransportContext> send = video.WriteToStream;
                    //var response1 = Request.CreateResponse();
                    //response1.Content = new System.Net.Http.PushStreamContent(send, new System.Net.Http.Headers.MediaTypeHeaderValue("video/mp4"));
                    ////调用异步数据推送接口  
                    //return response1;
                }
                return resp;
            }
            catch (Exception)
            {
                ObjJson.state = true;
                ObjJson.msg = "数据异常";
                ObjJson.code = 500;
                resp.Content = new StringContent(JsonConvert.SerializeObject(ObjJson), System.Text.Encoding.UTF8, "application/json");
                return resp;
            }
          


        }

 

视频返回并可以直接播放

原文:https://www.cnblogs.com/yutang-wangweisong/p/14046859.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!