问题标签 [interception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
223 浏览

wcf - Ninject 拦截 WCF 服务

我是这个主题的新手,所以我会尽量说清楚......

我创建了一个 WcfModule,我在其中加载了以下包:

起初,我没有收到任何错误,但我在我的函数上放置了一个 InterceptAttribute:

我在这个函数中得到一个错误:(方法的第一行)

出现错误:

用户代码未处理 InvalidProxyConstructorArgumentsException 无法实例化类的代理:My.Namespace.DistributorService。找不到无参数构造函数。

谁知道问题可能是什么?谢谢!

0 投票
1 回答
1361 浏览

c# - 拦截或装饰对 ILogger 的调用

我目前正在使用城堡温莎,以及它在我的应用程序中的日志记录工具。

但是,在我的日志记录中,我想包含一些上下文信息,这些信息不在记录的消息中,而是存储在CallContext.

我试图通过拦截ILogger使用以下内容的调用来做到这一点:

但是变量logger是类型NLog.Loggger而不是我期望的动态代理。

0 投票
1 回答
619 浏览

c# - .net MVC 控制器使用 Ninject 拦截

我已经连接了 MVC 4 项目和 Ninject 3。

现在我想处理我的 MVC 控制器方法的拦截。

如果我添加这个:

它有点工作(即使我自己的方法没有被拦截,而是我得到了从 Controller 基类拦截的 BeginExecute、EndExecute 和 Dispose 方法)。但是,让我们说现在还可以。

如果我想像这样在 HomeController 上拦截特定方法:

它根本行不通。拦截永远不会被解雇。

另一方面,如果我在项目中的某个普通服务类上使用相同的方法拦截,那么它就可以工作。似乎只有 Controller 方法有被拦截的问题。

^这有效。

有谁知道我该怎么做?

PS。我将 NinjectWebCommon 与 WebActivators 一起使用:

0 投票
1 回答
2547 浏览

c# - 在 Unity 中注册拦截实例

对于我的单元测试,我目前正在使用 Moq 模拟我的拦截器和拦截的类,然后在 Unity 中注册拦截的实例并为接口设置默认拦截器。然后我解析实例并调用拦截的方法,并验证正在调用拦截方法。

这很好用,但是我宁愿在注册期间设置拦截,就像我在注册服务/单例时一样,以保持一切一致。

我看不到任何使用该方法配置拦截的IUnityContainer.RegisterInstance()方法,因为它不需要任何InjectionMembers. 如果我UnityContainer.Configure<Interception>().SetDefaultInterceptorFor<T>()在解析之前调用,我实际上可以对实例使用拦截。

是否有更好/更简单的方法来注册或模拟拦截器?

0 投票
1 回答
46 浏览

c - LD_PRELOAD - 可以拦截像 + 和 - 这样的原始运算符吗?

是否可以使用 LD_PRELOAD 拦截像这样的原始操作(+、-、% 等)?

如果没有,有什么方法可以实现类似的东西?

0 投票
1 回答
311 浏览

c# - 属性可以实现接口吗?

我正在使用 Unity Container 进行拦截,因此正在尝试添加 [Trace] 属性,例如

公共类 TraceAttribute : HandlerAttribute

然后在代码中,我可以像这样使用它:

这是我的问题/目标:我不希望 Trace 属性与 Unity Interception 相关联。如果我以后更改 DI 容器,或者想要实现自己的容器等。我想将其换掉,就像我们对接口所做的那样。

就像是:

公共接口 TraceAttribute : ITraceAttribute

然后有具体的实现?那可能吗?

我们面临的挑战之一是,在我使用 Trace 属性的任何地方,我都必须安装 Unity 程序集,我想避免这种情况。

谢谢!

0 投票
2 回答
7309 浏览

c# - 如何在不使用 CallerInfo 属性的情况下获取 CallerFilePath 和 CallerLineNumber?

对于我的 log4net 解决方案,我有一个使用 CallerInfo 属性的 API 包装器,例如

但是,我也在使用 Unity 拦截,以便我可以执行之前/之后响应的跟踪记录,例如在 Invoke 方法中使用 ICallHandler,如下所示。

注意:上面的代码绝不是完整/正确的......只是想向您展示我为 Unity Interception 所做的工作。

我的问题/挑战是:当我最终调用 log.Write(...) 时,我想要目标的调用者信息,而不是我的 TraceCallHandler 信息。

例如对于方法名称,我可以这样做:

如何获取来电者的文件路径和来电者的行号?甚至可以通过反射来实现吗?

谢谢!

0 投票
1 回答
1143 浏览

c# - 在现有注册上添加拦截

在这种情况下,我的应用程序收到了一个已经初始化UnityContainer的已注册类型,归结为:

我需要实现的是ServiceInterceptorIService注册中添加一个拦截器。我想显而易见的答案是:通过运行第二个RegisterType<IService>并将拦截器应用为注入成员来做到这一点。然而,不幸的是,如下所述重新创建提供的注入工厂和委托是不可行的。new Service()我目前无法获得该声明。

所以:我正在寻找一种方法来将更多的注入成员添加到现有的ContainerRegistration.

0 投票
2 回答
955 浏览

android - 无法使用 burp 套件拦截 Android 混合应用程序 HTTPS 流量

我无法拦截我正在工作的一个 android 胖客户端应用程序的 https 流量。但是我能够拦截其他应用程序的 https 流量。此应用程序是在 IBM Worklight 框架上制作的。请在下面找到应用程序的 logcat 日志。

然而,该应用程序在我面临一些不同问题的查尔斯身上被拦截。
注意:我已经在模拟器中安装了 burp 证书。

0 投票
1 回答
1236 浏览

c++ - 使用 Oblita/Interception 库发送鼠标点击/发送坐标?

我目前在一些项目中使用 Interception 库,如果我能够在现有代码中发送坐标和模拟鼠标点击,它将非常有用。我知道当前库中有些东西支持做这些事情,但是由于缺乏文档(以及与开发人员的联系),我担心我可能永远无法实现我的目标。

到目前为止,我唯一的线索是鼠标坐标函数使用真实的鼠标坐标(意味着将某个变量设置为 -1 会反转鼠标,诸如此类),但我希望能够将屏幕坐标传递给它。此外,它具有某些鼠标标志(INTERCEPTION_MOUSE1_DOWN、INTERCEPTION_MOUSE1_UP 等),但在尝试使用 SendInput 传递这些标志后,它似乎失败了。

如果有人能提供任何帮助,那将是一种祝福,谢谢大家!

http://oblita.com/interception.html

PS - 我确实看到了另一个问题,有人问了与此类似的问题,仍然存在一些复杂性和一些缺乏信息。再次感谢。