.net core学习-起始篇

本文探讨了DotnetCore与传统.NET Framework的区别,包括跨平台能力、容器化支持、快速开发服务等优势,以及在IIS部署和Windows平台耦合类库使用上的局限性。适合希望从.NET Framework转向DotnetCore的开发者阅读。

了解学习过一段时间的.net core,现对学习和了解的dotnet core相关知识进行一些简单的整理。

首先就以下几个问题展开一些自我的理解,这也是我自己开始学习dotnet core的时候也曾疑惑的几个问题。

1.Dotnet core跟之前我们一直在用的nfx(dotnet framework)有什么区别?(优势劣势)

就我的理解,其实从写法上来说,并没有太大的区别。在官网上有介绍dotnet core的一些优势,诚然,新的技术的出现肯定是有它独特的优势的了,不然谁愿意抛弃一直都熟悉的语言来开始在一个新的语言环境中来编程呢。以下是我了解的dotnetcore的优势:

  • 可以跨平台运行,即可以在非windows机器上运行。这对于低配的机器来说可以说是福音了(为什么这么说呢,就我个人而言,一个只有2g内存的机器装windows系统基本做不了什么事,可是装上一个linux系统却可以做很多的事情)
  • 可以在非iis中运行,支持容器化。你可以使用linux+nginx+docker特别方便地部署你的应用。core程序本身不关心web服务器的事情,web服务器的比如反向代理,负载均衡之类的,都在nginx中去配置吧。
  • 微软提供的模板项目中的asp.net core可以用来快速开发服务。其中框架本身就集成了web项目常用的功能模块,比如ioc,日志,异常处理等。
  • 运行速度快(这个具体的我没有测试过)

也有一些dotnetcore跟nfx相比所不具有的优势,我们暂且称之为劣势吧,总结下来有以下几点:

  • 在iis中发布网站的时候我们只需要复制文件到iis网站目录就可以了,如果使用iis运行core的程序,则会发现覆盖的时候,如果网站正在运行,会提示文件被使用无法覆盖,必须手动停止网站之后再覆盖文件,然后再手动启动网站。
  • nfx中的一些跟windows平台耦合很深的一些类库,比如对office的操作,wpf程序的使用之类的,在core中暂时无法使用。

之所以暂且称之为劣势,是因为对于以上两点都可以忽略。更多的时候推荐的使用core的方式都不是在iis中使用的(应对iis不会自动停止和重启,完全可以自己写个程序实现,监控网站路径中的文件变化,若有变化则自动调用iis的停止该网站的方法,当变化停止后再启动该网站即可,该程序我实现过,可以当做windows服务来运行)。对于跟windows平台耦合很深的,完全没必要使用core来做,比如你的程序在linux上运行了,也不会使用微软的office了吧,也不再需要界面了是吧。

2.core可以用来做什么?

毫无疑问,大家用的最多的是用来做服务端,提供服务。微软提供的模板项目中也包含有服务端做页面的,不过感觉使用的人并不会太多,毕竟现在大家都提倡前后端分离,所以更多的时候,core是用来做服务提供api服务的。当然了,也可以做工具类来使用,比如文件处理之类的。

3.从传统的.net(nfx)转到core容易吗?

如果你之前的项目中就有使用过mvc,ioc,aop之类的一些经验的话,学习dotnet core应该会很快。如果没有,就需要补充一些这些方面的相关知识了,难度相对而言就会大一些。不过也不用担心,毕竟Microsoft的文档写的那是相当的好,参考官当文档就可以了。(这里忍不住吐槽一下google的一些技术文档了,java的也是,看起来没组织没条理 -~_~-)

4.core目前的生态好吗?工作好找不?

目前github上有特别多的关于dotnetcore的开源的项目,开源+跨平台,生态自然比之前nfx好多了,在github上看看就知道了。至于工作好找不,我不知道,只是感觉身边的用core的人在逐渐增多,而且大多数的doter都有一个共识,那就是core是.net的未来。

为了更好的学习和加深了解,准备写完这个系列,目前能想到的包含以下一些内容:

  1. 运行环境搭建(ubuntu+nginx+docker)
  2. asp.net core项目中的日志系统探究
  3. asp.net core项目中的异常处理探究
  4. asp.net core项目中的依赖注入实现和替换
  5. 利用core cli工具定义并安装自己的模板项目
  6. 在控制台项目中使用依赖注入

 

 

 

为什么我访问一个理论上该返回视频的url,但返回了一个steam文件 #EXTM3U #EXT-X-VERSION:4 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-PLAYLIST-TYPE:VOD #EXT-X-KEY:METHOD=AES-128,URI="https://use1-web-tapo-care-beta.tplinknbu.com/v1/secret-keys/video?jwsToken=eyJraWQiOiJjNGQ5NjJmNi1iNjBjLTQ4ZDktODQzMC1lNjRiZmZiZTE1ZDYiLCJhbGciOiJSUzI1NiJ9.eyJtZWRpYUlkIjoiY2dMVVY5TnBkOEZZWHVJcTVJb2dlMUR0Q1Q2L2U1OE56N3QrN29lR1FYaGlTbkwyVUJ0UjBFQUR0VlFxQVdLL2NkT0hjRmZQUC9tSkNUM2l4b2tiMXdpRG91Z25ybjArdVg2RnQ2V1hJTHZPNEx2alA0dGs4T2RLRGUwb3VjT0NoSWlUcEhBWERIdmJ4ODcwQStEQ0FnbUNSNEFQTlpkdDFLMDBYTlZNc0k2UlNPbzNJVlZHZnJJckl1UmloWTBnNDFWNDFUMTRwWHE1YVNYY0pMSmxFTmFiZzZTT1M3MjlNV2hHQTdqSitPc0F3Q1hFdzdRNWpHeGhlbU1KcXFRZ3E3ZXJCUmx2aEVwbnhJMXVZTWNFRHpvb2ZsdEtITFRoTUtkK041UzRTajNaMmNyaFVoM3pjTUhiL1BTVURpRWFLS0JlSWQ0cklsbWFpaEVqTXMweHVBPT0iLCJpYXQiOjE3NjMxMTY0NjgsImV4cCI6MTc2MzEyMDA2OCwic3ViIjoiTWVkaWFTZWNyZXRLZXkifQ.T4NbcAZr6ivImFnm9dWGo7v78Nh9aPvQrEKlcIHRRg9b6WaX_NQ2e3ml3zUGnRYCa6u7zu6BGwvb7qmTKRGfOXaOfWMlwFWT4wINbjZVVz66N5dRo9qgYMPXCBYfrbhLeQDuLhISo1edD6dvffbwC-mufFDfr4lhgLacEGy2NMXCoJSe4sokCYt7DyGAtyFK1ukZQlVrueyoxLwlVUswFKFRfdLpSKS89XSTFdcA-bR0Zsp9q1iGUebvy2ZdGzQ4pkrvF6KICnjCKZXLdEbMKxJLLiAHRyUO5eHgPNnVsVym8_tV9Y3YmtPIHUVRgCdNcXbo6i26AxzKXgZTbPuLIQ",IV=0x00000000000000000000000000000000 #EXTINF:9.950000, #EXT-X-BYTERANGE:2024016@0 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.016678, #EXT-X-BYTERANGE:2091328@2024016 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:9.983322, #EXT-X-BYTERANGE:2121408@4115344 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.050000, #EXT-X-BYTERANGE:2118400@6236752 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2190016@8355152 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2167648@10545168 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2175728@12712816 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.016678, #EXT-X-BYTERANGE:2078912@14888544 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2134944@16967456 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.033322, #EXT-X-BYTERANGE:2096016@19102400 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:9.950000, #EXT-X-BYTERANGE:2078160@21198416 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2124224@23276576 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2121216@25400800 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2092832@27522016 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.050000, #EXT-X-BYTERANGE:2156752@29614848 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.000000, #EXT-X-BYTERANGE:2187584@31771600 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:10.066667, #EXT-X-BYTERANGE:2158816@33959184 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:9.983333, #EXT-X-BYTERANGE:1935472@36118000 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXTINF:4.266667, #EXT-X-BYTERANGE:1056000@38053472 https://uattapocarezbr1.blob.core.windows.net/uat-tapo-care-zbr1/DEF/US/2025/11/13/17153011022050/2025-11-13.07-55-36.589.0ff0b115-cc66-42c8-a4b9-19a3f80c0855.2688-1520.0.19430.ts?sv=2020-04-08&spr=https&se=2025-11-14T11%3A34%3A28Z&skoid=ce02203e-e69a-4d68-978e-8d960a8e1f83&sktid=82e2caa8-bfdb-4e72-bb1b-2aded5d3c408&skt=2025-11-14T09%3A51%3A11Z&ske=2025-11-21T08%3A51%3A07Z&sks=b&skv=2020-04-08&sr=b&sp=r&sig=wEgPeVth%2FrMw7WZjF%2Bj1tjbv%2FAM%2F8YfcZOxmzkSoupw%3D #EXT-X-ENDLIST
最新发布
11-18
你访问的URL返回的是HLS(HTTP Live Streaming)协议的M3U8播放列表文件,而不是直接的视频文件。这是现代流媒体服务的常见设计,目的是实现**分片传输**和**自适应码率**。以下是详细解释: --- ### **1. 为什么返回M3U8文件而非视频?** - **HLS协议的工作流程**: HLS会将视频分割成多个小分片(通常是`.ts`文件),并通过M3U8文件(文本格式的播放列表)描述分片的顺序、时长、加密信息等。浏览器或播放器根据M3U8文件逐步下载并拼接分片,实现流畅播放。 - **优点**: - 支持自适应码率切换(根据网络状况选择不同清晰度的分片)。 - 减少卡顿:分片可以并行下载和缓冲。 - 支持加密(如你示例中的AES-128加密)。 --- ### **2. M3U8文件解析** 你的M3U8文件包含以下关键字段: #### **基础信息** - `#EXTM3U`:文件头,表明这是HLS播放列表。 - `#EXT-X-VERSION:4`:HLS协议版本。 - `#EXT-X-TARGETDURATION:10`:每个分片的最大时长(秒)。 - `#EXT-X-PLAYLIST-TYPE:VOD`:表示点播视频(非直播)。 #### **分片信息** - `#EXTINF:9.950000`:分片时长(秒)。 - `#EXT-X-BYTERANGE:2024016@0`:分片在TS文件中的字节范围(`长度@起始偏移量`)。 - 分片URL示例: ``` https://uattapocarezbr1.blob.core.windows.net/.../2025-11-13.07-55-36.589...ts ``` - 同一个TS文件被多次引用,通过`BYTERANGE`指定不同区间(节省存储空间)。 #### **加密配置** - `#EXT-X-KEY:METHOD=AES-128`: - 分片使用AES-128加密。 - `URI`:密钥获取地址(需JWT认证)。 - `IV`:初始化向量(全零表示使用分片序列号作为IV)。 #### **结束标记** - `#EXT-X-ENDLIST`:表示点播视频结束(直播流没有此标记)。 --- ### **3. 播放器如何工作?** 1. **解析M3U8**:播放器读取播放列表,获取分片URL和加密信息。 2. **获取密钥**: - 向`URI`发送请求(需携带JWT),获取解密密钥。 3. **下载分片**:按顺序下载`.ts`文件(或指定字节范围)。 4. **解密并播放**: - 用密钥和IV解密分片。 - 通过浏览器的Media Source Extensions (MSE) API动态拼接分片,交给`<video>`标签播放。 --- ### **4. 为什么TS文件复用?** - 你的示例中,所有分片来自同一个TS文件(`19430.ts`),通过`BYTERANGE`指定不同片段。 - **优点**: - 减少小文件数量,降低存储和CDN开销。 - 适合长视频分段加载。 --- ### **5. 如何手动下载并播放?** 1. **下载M3U8文件**:保存为`playlist.m3u8`。 2. **下载密钥**: ```bash curl "https://use1-web-tapo-care-beta.tplinknbu.com/v1/secret-keys/video?jwsToken=eyJraWQiOi..." > key.key ``` 3. **下载分片**:用工具(如`ffmpeg`)合并: ```bash ffmpeg -i playlist.m3u8 -c copy output.mp4 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值