问题标签 [interceptor]
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.
c# - 仅使用 DynamicProxy 拦截接口方法
我有这样的界面
实现该接口并具有另一个方法的类
还有一个拦截器
我只想拦截 IService 上存在的 Service 上的方法(即我想拦截 InterceptedMethod() 而不是 SomeMethod()),但我不想使用 IProxyGenerationHook 中的 ShouldInterceptMethod。
我可以这样做,但由于它返回一个接口,我不能在这个对象上调用 SomeMethod
可以工作的一件事是从 SomeMethod() 中删除虚拟并这样做
但我不喜欢这个解决方案。
我不喜欢使用 IProxyGenerationHook 中的 ShouldInterceptMethod,因为每次我更改接口时,我也需要更改 ShouldInterceptMethod,而且有一天有人可以重构方法名称并且不再拦截该方法。
还有其他方法可以做到这一点吗?
struts2 - 令牌会话 使用令牌来防止重复提交表单?
我使用 Token Session 来防止重复提交表单,但是第一次向服务器发出请求时,我总是得到错误页面
"<s:token />"
<s:form>
已添加到和之间的可能成功页面</s:form>
,但无法正确运行。
请帮我解决它们,是否有另一种方法可以防止重复提交表单。我等待建议,非常感谢你。:)
structuremap - 结构图 202 - 为什么?
好的,我正在尝试在我向 SM 注册的类型上设置一个属性。
这是我的一个组件中注册表中的代码。此注册表是在从控制台应用程序配置期间添加的。当我尝试访问实例 AutoMandatoryEndorsementAggregator 对象的 EndorsementSpecs 属性时,我得到 202。有趣的是,我可以从我的控制台应用程序调用 GetAllInstances>() 并且它解决得很好。是否有关于从导致 202 的 OnCreation 中访问此代码的内容?我可以在 WhatDoIHave() 中看到我所期望的一切。我还尝试了具有相同结果的 TypeInterceptor。
session - 我应该在什么时候改变 Struts 获取会话令牌的方式?
看来我必须找到一种不同的方法来将会话令牌从 Flex 客户端传输到 Struts 后端而不使用 cookie。
如果我将会话令牌放入请求的有效负载中,我必须在什么时候自定义 Struts 的行为,以便我可以尽可能多地重用现有的会话处理?特别是,我不想重新实现任何安全措施(例如将令牌绑定到 IP)和配置参数(例如会话到期间隔)。
有一个 CreateSession 拦截器,在默认堆栈的早期,我应该用子类版本交换它吗?
java - Struts 调用的是什么方法?
如何从拦截器中获取将在操作中调用的方法的名称?
spring - 在自定义方法拦截器中访问 bean 名称
我想编写在数据库中执行的 bean 名称和方法,因此决定创建一个自定义拦截器。但是,我无法访问 bean 名称。
我发现 ExposeBeanNameAdvisors 可能是解决方案之一,但无法找到设置名称的点。
有人对此有想法吗?非常感谢!!
asp.net - 具有域上下文的休眠拦截器
是否可以(以干净的方式)在休眠 2.1 中创建一个审计拦截器并将域上下文传递给它?
我想要实现的是设置一个日期时间(可以很容易地完成 - 在快速谷歌之后找到加载文章),但是设置一个对象,例如创建项目的用户,或者更改我还没有找到任何东西的实体这涵盖了这一点。
由于我在应用程序请求/启动时不知道对象(这是我必须注册 nhibernate 拦截器的地方),有没有人知道合适的解决方法?
在此先感谢,马克 H
javascript - 您如何在客户端(浏览器)AJAX 请求/响应对上实现拦截器模式?
让我从一个真实的用例开始:
当服务器端身份验证过滤器由于会话过期而尝试将 AJAX 请求重定向到登录页面时,DWR会感到困惑。您想添加一些过滤器,以便
- HTTP 状态码等于3xx的请求会执行客户端重定向,例如window.location = ...login.html
- 状态码等于2xx的请求将被转发 - 不变 - 到任何已注册的处理程序,如 DWR。
- 其他代码,如4xx可能会触发警报,而不是消失在深渊中。
我可能不必解释为什么这种功能会有用。大多数服务器端 Web 框架都支持拦截器模式,原因与您可能希望在客户端上使用它的原因相似。
一种(可能是坏的)实现可能涉及将原始 XMLHttpRequest 对象包装在接受某些过滤器功能的代理中。由于 jQuery、Prototype、ExtJS 等都已经包装了本机浏览器 AJAX 对象,这可能是一个额外的步骤。
这可以本地实现吗?有哪些技术挑战?以前有过这样的事情吗?
grails - 在 Grails / Groovy 中拦截或重命名方法调用
我试图在 Grails 应用程序中拦截一个方法调用(域类的 afterInsert())。在我的插件的 doWithDynamicMethods 关闭中,我有:
但后来我得到这个错误:
我也试过用 dc.metaClass."afterInsert_old".invoke(delegate, new Object[0]) 来调用它,但后来我得到:
我究竟做错了什么?如何调用不带参数的方法?
我了解 AOP,并且还以 Grails Audit Logging 插件为例。但是,据我所知,它的作用是添加新的用户创建的方法,这些方法会在正确的时间触发。我想自动注入我的代码,这样用户就不必担心任何事情,我不想破坏他原来的 afterInsert() (或任何方法)实现。
另外,我想对暴露的服务方法做同样的事情,以便为它们注入安全性。但是,从我读到的内容来看,由于 BeanWrapper 并且服务总是重新加载,因此它不起作用。有人可以向我更好地解释一下吗?
提前致谢。
nhibernate - nhibernate动态绑定一个类
我已经阅读了这篇文章,并且正在寻找一种方法来在运行时动态更改我的映射,以使用依赖于父对象中的值的一对多绑定到不同的表。
这是我的映射
和
现在正如文章所述,我应该能够使用拦截器更改实体名称
现在的问题是双重的。
首先,尽管在打开我的会话时声明了它,但我似乎无法启动这个拦截器,其次我完全疯了,这永远不会奏效吗?