摘要:`mediasoup` 的服务端由两部分构成: 1、使用 `C++` 编写的作为子进程的媒体层 (`ICE`, `DTLS`, `RTP` 等)。可执行文件在 `Linux` 或 `macOS` 上为 `mediasoup-worker`,在 `Windows` 上为 `mediasoup-worker.exe`。 2、使用 `Javascript`(`Typescript`) 编写的、基于 `Node.js` 的用于与 mediasoup-worker 进行通信的组件。因为官方或几乎所有第三方的 mediasoup 服务端都是使用的是 Node.js 来实现,所以官方提供一个中间层让开发者不直接和 mediassoup-workder 交互。 本文主要讨论如何使用 `ASP.NET Core` 替换 Javascript(Node.js) 的实现。 阅读全文
posted @ 2020-05-05 23:26 alby 阅读(256) 评论(2) 推荐(0) 编辑
摘要:本文将会根据情况持续更新。 作为一个 `Framework`,`ASP.NET Core` 提供了诸多的扩展点。使用内置的组件和默认的配置通常就能够满足部分需求,当需要扩展的时就需要先去找出这些扩展点。除了基于实际应用对 `ASP.NET Core` 进行扩展,也会故意搞一些不切实际的伪需求,解决一些不会存在的问题。这样的目的何在呢?一是为了加深对 `ASP.NET Core` 的理解,二是难保这些伪需求不会变成真需求。 阅读全文
posted @ 2019-03-28 01:13 alby 阅读(450) 评论(0) 推荐(1) 编辑
摘要:ASP.NET Core MVC 提供了基于角色( Role )、声明( Chaim ) 和策略 ( Policy ) 等的授权方式。在实际应用中,可能采用部门( Department , 本文采用用户组 Group )、职位 ( 可继续沿用 Role )、权限( Permission )的方式进行授权。要达到这个目的,仅仅通过自定义 IAuthorizationPolicyProvider 是不行的。本文通过自定义 IApplicationModelProvide 进行扩展。 阅读全文
posted @ 2018-11-28 23:48 alby 阅读(4108) 评论(2) 推荐(1) 编辑
摘要:OrchardCore 通过将服务和中间件放在不同的程序集以支持模块化。各个模块提供类似于 ConfigureServices 和 Configure 的方法供运行时调用。 阅读全文
posted @ 2018-11-26 16:34 alby 阅读(1267) 评论(3) 推荐(1) 编辑
摘要:版本:OS X 10.10.5Xcode 6.4(6E35b)iOS >= 7一、概述状态栏(UIStatusBar)指iPhone/iPad/iPod屏幕顶部用于显示网络、时间和电量等的、高度为20点的控件。状态栏的windowLevel为UIWindowLevelStatusBar,而windo... 阅读全文
posted @ 2015-10-07 21:22 alby 阅读(17434) 评论(1) 推荐(2) 编辑
摘要:版本:OS X 10.10.5Xcode 6.4(6E35b)iOS >= 7一、MOV/MP4视频文件中的Rotation元数据iOS上内置相机应用录制的mov/mp4视频可能产生一个Rotation元数据,表示录制视频时摄像头旋转到了多少角度。其值一般为这四个:0、90、180或270。类似于图... 阅读全文
posted @ 2015-06-30 12:27 alby 阅读(13459) 评论(0) 推荐(2) 编辑
摘要:分割线 阅读全文
posted @ 2015-06-24 12:36 alby 阅读(359) 评论(0) 推荐(0) 编辑
摘要:概述默认情况下,ASP.NET MVC内置的DefaultControllerFactory负责Controller实例的创建。Orchard定义了一个继承自DefaultControllerFactory类的Orchard.Mvc.OrchardControllerFactory类并在OrchardStarter类中进行注册: // 以下代码来在Orchard.Environment.OrchardStarter类 ControllerBuilder.Current.SetControllerFactory(newOrchardControllerFactory());Orchard... 阅读全文
posted @ 2013-10-11 16:40 alby 阅读(2410) 评论(4) 推荐(2) 编辑
摘要:概述关于ASP.NET MVC中路由有两个基本核心作用,一是通过Http请求中的Url参数等信息获取路由数据(RouteData),路由数据包含了area、controller、action的名称等信息。只有获取了匹配的路由数据,才有可能转入ASP.NET MVC管道;二是根据由规则生成Url,比如要根据某些数据生成View上显示的链接。Orchard对路由进行扩展主要基于如下原因:(1)、路由定义在各个模块中。在Orchard应用程序初始化时将分散在各个模块的路由定义收集起来统一注册。(2)、路由定义一次,对于多Shell系统,则会被多次注册以匹配Shell的前缀。(3)、当请求进入时需要确 阅读全文
posted @ 2013-03-11 13:13 alby 阅读(3432) 评论(5) 推荐(1) 编辑
摘要:概述Orchard归根结底是一个ASP.NET MVC(以后都简称为MVC)应用,但在前面的分析中,与MVC相关内容的涉及得很少。MVC提供了非常多的扩展点,本文主要关注Orchard所做的扩展。主要集中在如下几个方面:1、Routing(路由)相关2、Controller相关3、ViewEngines相关4、Model绑定(Binding)相关5、Model验证器(Validator)相关我们将分几个篇幅来分别分析。参考资料:How ASP.NET MVC Works(强烈推荐)ASP.NET MVC中你必须知道的13个扩展点ASP.NET MVC 请求生命周期ASP.NET MVC 4(M 阅读全文
posted @ 2013-03-11 13:12 alby 阅读(1517) 评论(0) 推荐(0) 编辑