问题标签 [ihttpmodule]

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 投票
2 回答
3413 浏览

sharepoint - HTTPModule 和 Sharepoint 站点

我在将 HTTPModule 与共享点部署站点一起使用时遇到了问题。这是我所拥有的:

  • /layouts/[ProjectName]/ 文件夹中的我的 asp.net 页面。aspx 文件使用共享点母版页
  • 我有一个 HTTPModule 并实现 IHTTPModule
  • web.config 包含 {httpModules} {add name="HTTPModule" type="HTTPModule, [fullname assembly]WebForms, Version=1.0.0.0, Culture=neutral, PublicKeyToken=370ae5aba0a4672a"/} {/httpModules}
  • web.config 放置在 layouts/[projectname] 文件夹中。

但无论出于何种原因,看起来 HTTPModule 都没有被选中。我已经验证了:

  • 该程序集存在于 GAC 和 publickeytoken 中,所有内容都是正确的。
  • GAC 的程序集确实包含 HTTPModule 的代码
  • web.config 是从 layouts 文件夹中挑选出来的。
  • httpmodule 没有被选中(我在初始化中抛出异常,会话开始让它在我身上中断......但它不会抛出那些异常)

HTTPModule 没有被拾取是否有某种原因。

ps:我基本上是在尝试这样做http://vspug.com/dwise/2007/01/08/one-master-to-rule-them-all-two-actually/

0 投票
2 回答
6128 浏览

asp.net - JS、图像和 CSS 被 HTTPModule 拦截

我有一个简单的 HTTPModule,它可以进行一些自定义会话状态管理。

当我用断点运行这段代码时,我看到这个模块甚至被像图像、js 和 css 这样的静态文件调用。有没有人经历过这个?我认为 HTTP 模块只是连接到 http 管道中的事件,用于 asp.net 页面。他们是否也与静态资源挂钩?还是只有卡西尼?

环境:VS2008 - 卡西尼服务器

PS:我确实在我们的沙箱中使用 Win2k8 IIS7 尝试过(有点新),并尝试将其写入日志文件(因为我们没有 VS),但无法写入日志文件。确信它有一些写权限问题。谁能指出一些资源,告诉我在 W2k8 中使用 IIS7 运行 ASP.net 时如何设置目录的写权限

Edit1:我知道使用集成管道将扩展 http 管道用于静态和托管资源,例如 http://aspnet.4guysfromrolla.com/articles/122408-1.aspxhttp://learn.iis.net/page.aspx /243/aspnet-integration-with-iis7/

我们在产品中使用经典管道。但仍然有兴趣了解其他人的经历。

问题2:在集成模式下使用IIS7,会降低性能吗?假设您有几个模块与管道连接,性能影响有多大?如果有人能指出为此进行的一些基线研究,那就太好了。

0 投票
1 回答
130 浏览

asp.net - IHTTPModule 性能受到影响?

我正在实现这个问题中描述的 IHttpModule 。由于我们正在检查每个请求,我担心可能会影响性能。有没有人在实现 IHttpModules 时遇到性能问题?

0 投票
1 回答
313 浏览

c# - 从 ac# .net 应用程序中的 ihttpmodule 检测映射的虚拟目录

我有一个 .net 网站,其中包含我写的 IHttpModule 来执行某些任务(授权等)。但在网站内,有许多虚拟目录映射到第三方应用程序,很遗憾我无法更改或移动这些应用程序(例如社区服务器论坛、adxstudio cms 等)。

我正在寻找一种方法来阻止我的 IHttpModule 在对这些虚拟目录的内容发出请求时运行。这可能吗?

[编辑 - 添加以下内容]

我一直在尝试在虚拟目录应用程序的 Web.config 文件中添加<remove name="X"/>节点<httpModules>,但似乎没有成功。这可能也不是一个很好的解决方案,因为第三方应用程序可以更新,所以我不想要求更改他们的代码/配置。

我还尝试在父 Web.config 中的节点<location path="." inheritInChildApplications="false">周围添加一个<system.web>,但这似乎也不起作用。

[再次编辑 - 添加更多]

原因是它不起作用是因为 IHttpModule 的 Init 事件在每个应用程序生命周期中只触发一次(而不是我假设的每个请求)。由于我在 init 事件中添加了一堆事件监听器,这些监听器仍然会在后续请求中触发......

0 投票
1 回答
1770 浏览

asp.net - 我可以读取 ASP.NET 中的 HTTP 输出流吗?

我想阅读所有写入输出流的内容。我正在尝试使用 HTTP 模块来执行此操作,并且处理 PreSendRequestContent 事件的时间似乎很明显。

但是,如果输出流似乎设置为只写,因为我无法使用StreamReader. 有没有办法在不编写自己的 IIS 模块的情况下读取和重写内容?

0 投票
1 回答
1280 浏览

json - json ihttpmodule 压缩

我编写了一个 IHttpModule 使用 gzip 压缩我的响应(我返回大量数据)以减小响应大小。只要 Web 服务不引发异常,它就可以很好地工作。如果抛出异常,则会压缩异常,但 Content-encoding 标头会消失,并且客户端不知道读取异常。

我该如何解决这个问题?为什么标题不见了?我需要在客户端获取异常。

这是模块:

这是网络服务:

我感谢任何帮助。

谢谢!

0 投票
1 回答
1133 浏览

asp.net - 通过 javascript 代理 (AJAX) 调用 .Net Web 服务时是否使用 HttpModules?

我正在使我们的大量 Web 服务可用于 AJAX 调用。我已将其添加[System.Web.Script.Services.ScriptService]到每个服务中。我们有一个已注册的 HttpModule,它初始化了一些我们经常在 IHttpModule.Init 覆盖中用于日志记录和国际化的对象。似乎在我向任何 Web 方法发出 SOAP 请求时调用了 IHttpModule.Init,但在我向任何 Web 方法发出 JSON 请求时却没有。我已经通过在调用文件时写入文件来确认这一点。

通过 javascript 代理 (AJAX) 调用 .Net Web 服务时是否使用 HttpModules?如果是这样,我是否缺少某种配置?相关代码位包括在下面。

-科林-


网络配置:


HTTPModules.cs:

0 投票
1 回答
431 浏览

c# - 如何操作标头,然后在 C# 中继续使用它?


我想替换在 IIS6 上运行的旧 ISAPI 过滤器。此过滤器检查请求是否属于特殊类型,然后操作标头并继续请求。在调用另一个特殊 ISAPI 模块所需的操作方法中添加了两个标头。
所以我有 ISAPI C++ 代码,例如:

我现在想将此 ISAPI 过滤器重写为 IIS7 的托管模块。所以我有这样的事情:

现在呢?该请求似乎没有做它应该做的事情?
我已经编写了一个实现相同方法的 IIS7 本机模块。但是这个方法有一个返回值,我可以用它告诉下一步该做什么:

那么有没有办法再次发送我操纵的上下文?

0 投票
1 回答
1035 浏览

c# - C# 中的帧重定向

我想从我的 IIS 7 托管模块在 C# 中执行帧重定向。
当我调用时context.Response.Redirect(@"http://www.myRedirect.org");,会显示正确的页面,但地址也会显示在浏览器中。这正是我不想要的。
所以我想要类似的东西:

有什么想法吗?
编辑: 我尝试了这个例子,所以我有:

但这也没有正确重定向。我的浏览器中仍然显示重定向地址。那么还有什么想法吗?

编辑:我显然犯了一个错误。上面的代码可以工作并且可以满足我的要求。它首先不起作用,因为我的重定向 url 做了一些意想不到的事情。

0 投票
4 回答
2807 浏览

asp.net - HttpModule 是否在工作线程之间共享?

我是否必须锁定对实例成员的访问权限?

例子: