/// <summary> /// Use wechat browser filter in a NancyController/NancyModule /// </summary> /// <param name="pipeline"></param> /// <param name="optionAction"></param> /// <returns></returns> public static BeforePipeline UseWeChatBrowserOnly(this BeforePipeline pipeline, Action <WeChatBrowserOnlyOptions> optionAction) { if (pipeline == null) { throw new ArgumentNullException(nameof(pipeline)); } var options = new WeChatBrowserOnlyOptions(); optionAction?.Invoke(options); pipeline.AddItemToEndOfPipeline(ctx => { if (!Internal.RequestHelper.IsWeChatBrowser(ctx.Request)) { return(Internal.ResponseHelper.DoWeChatBrowserOnlyOption(ctx, options)); } return(null); }); return(pipeline); }