摘要:
需求 在处理定时任务大家可能都用过Quartz.NET,但在生产环境中大家肯定也遇到过如下的问题: 发布的时候需要停掉所有的Job,再整个一起打包发布 没有管理界面(其实在github也有几个这方面的项目,如:CrystalQuartz),不能很好的做到实时监控。 由于在生产环境中有以上的问题,所以我抽空就写了一个基于Quartz.NET的QuartzService。 原理 因为Quartz.... 阅读全文
摘要:
同源策略首先基于安全的原因,浏览器是存在同源策略这个机制的,同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性。对于同源必须要求URL在如下几个方面相同:网络协议(http与https不同) 域名 端口(80与8080不同) JSONPJSONP是跨域访问的一种方法。在web开发... 阅读全文
摘要:
WebAPI中有设计了几种管道(Channel),大概如下:HttpMessageHandler,ActionFilter管道,ExceptionFilter管道。在三种管道中HttpMessageHandler管道与ExceptionFilter管道是基于级别设计的,ActionFilter管道是... 阅读全文
摘要:
Filter(筛选器)是基于AOP(面向方面编程)的设计,它的作用是Actionr的执行注入额外的逻辑,以达到横切注入的目的。IFilter在WebAPI中所以的Filter都实现了IFilter接口 ,IFilter接口只有一个只读属性AllowMultiple,它表示同类的Filter是否可以应... 阅读全文
摘要:
Action的激活大概可以分为如下两个步骤:Action对应方法的调用,执行结果的协商。在WebAPI中由HttpActionInvoker(System.Web.Http.Controllers)进行Action的执行。public interface IHttpActionInvoker { T... 阅读全文
摘要:
在绑定完Action的所有参数后,WebAPI并不会马上执行该方法,而要对参数进行验证,以保证输入的合法性.ModelState在ApiController中一个ModelState属性用来获取参数验证结果.public abstract class ApiController : IHttpCon... 阅读全文
摘要:
在本系列的第二篇简要的讲述了Action的选择条件本篇深入讲述一下Action选择的过程在上一篇中我们已经讲到了Controller的激活过程中已经说到了设置Controller的ControllerContext,再接着就是调用HttpController的ExectuteAsync方法.在该方法... 阅读全文
摘要:
在Controller之前我们先回顾一下HttpMessageHandler通道。在这个图中我留一个HttpContollerDispatcher没有说明。因为这个类也是继承自HttpMessageHandler,但由于HttpRoutingDispatcher已经不继承DelegatingHand... 阅读全文
摘要:
MessageWebAPI作为通信架构必定包含包含请求与响应两个方法上的报文,在WebAPI它们分别是HttpRequestMessage,HttpResponseMessage。对于HttpResponseMessage之前在WebAPI返回结果中有应用。HttpRequestMessage请求报... 阅读全文
摘要:
WebAPI的中路由设计与ASP.NET相似,但又是独立的一套框架。HttpRoute HttpRoute主要提供了路由模板,用于匹配url,生成virtualPath. public interface IHttpRoute { IDictionary C... 阅读全文