问题标签 [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.
c# - Setting session variable in class that implements IHttpModule error
I am trying to set a session variable in a class that implements IHttpModule. I receive a "Object reference not set to an instance of an object."
Here is my code:
Please help.
asp.net - WebPageHttpModule 是如何在我的模块之后注册的?
在我的 web.config<system.webServer>
部分中,我添加了我的自定义模块:
然后在我的 HTTP 处理程序中,我遍历模块列表:
我得到了这个清单:
显然,我的模块是在所有内置模块之后注册的,除了 WebPageHttpModule 是在它之后注册的。
这是怎么发生的?我怎么可能确保我自己的模块最后注册?
asp.net-mvc - 如何在 .NET Web API 项目中存储全局每个请求数据
我正在为我目前使用 ASP.NET Web 窗体编写的应用程序编写一个 Web api。我有一个模块,它在请求开始时获取一些数据并将其存储在 HttpContext.Current.Items 中,以便稍后在页面处理期间可用于所有代码。
我正在尝试编写我的 web api,它需要做同样的事情。存储在处理 Web api 控制器期间使用的“每个请求”全局数据的正确方法是什么(我怀疑它对于常规控制器也是一样的)。
此外,如果有办法这样做,是否有办法在实例化控制器之前运行的 IHttpModule 中设置此数据。
任何帮助表示赞赏!
c# - ASP.NET 自定义错误处理 HttpModule 未重定向到所需的错误处理页面
错误处理 HttpModule 中有代码将用户重定向到适当的错误页面,但它没有这样做,而是显示错误页面以及包括堆栈跟踪在内的技术细节。
我在 Visual Studio 2008 下维护一个 Web 应用程序,以前在 Win XP 下运行它时运行良好,但是我们已经转移到 Win 7,当用户没有正确的查看权限时我遇到了这个问题选定的数据。我添加了必要的更改以使应用程序在 IIS 7 下运行,包括将 HttpModule 添加到文件的<system.webServer><modules>
部分Web.config
。我想知道是否还缺少其他东西?
这是问题的详细信息:我有一个 Web 表单,它使用 ObjectDataSource 调用 C# 服务层代码文件中的方法 GetAppData() 来向用户显示数据。服务层文件检查用户是否具有查看数据的正确权限,如果没有,它会抛出一个InvalidPermissionException
. 然后这会触发 Application_Error 方法在我的错误处理 HttpModule 中执行,该方法会捕获错误并将用户重定向到InvalidPermissionError.aspx
页面;但是,我看到的是带有技术细节和堆栈跟踪的错误页面。如何让它显示用户友好的错误页面?
以下是相关代码(我没有包含所有内容):
图 1:Web 表单
图 2:自定义错误处理 HttpModule
图 3:页面重定向代码
asp.net - SharePoint 2013,自定义 IHttpModule NullReferenceException
更新:问题解决了。继续阅读。
知道为什么显然不可能再添加自定义 IHttpModules 了吗?
我的问题与:HttpModule.Init - 在 IIS7 集成模式下安全添加 HttpApplication.BeginRequest 处理程序有关 但是这个问题相当陈旧,没有答案,并且没有 SharePoint 上下文。我可以将我的HttpModule添加到任何标准的 ASP.NET WebForms 页面。
SharePoint 托管在 IIS 8 中。AppPool 在集成模式下运行。框架级别为 4.0+。
结果:
[NullReferenceException:对象引用未设置为对象的实例。] System.Web.PipelineModuleStepContainer.GetEventCount(RequestNotification 通知,布尔 isPostEvent)+30
System.Web.PipelineStepManager.ResumeSteps(异常错误)+1098
System.Web.HttpApplication。 BeginProcessRequestNotification(HttpContext context, AsyncCallback cb) +135
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +604
web.config 如下所示:
一旦我不再附加到 BeginRequest 事件,页面就会再次工作。但显然我的 http 模块变得毫无用处。
编辑 2013.09.19: Init() 在应用程序启动时被调用两次。如果我仅在第二次调用时附加我的事件,则应用程序可以工作,但事件不会触发。
编辑 2013.09.20:问题大概解决了。我的 Init() 方法被触发了两次(中间没有调用 Dispose())这一事实让我假设我的 IHttpModule 实际上可能有两个共存的实例。虽然我之前的观察表明第二个实例可以附加事件(不触发,但对应用程序也没有负面影响) - 反之亦然(我的静态 _isInitialized “锁定”就是这种情况) .
**因此 IHttpModule 的两个实例都需要具有相同的“配置”(附加事件处理程序)。运行多个 HttpApplication 实例是完全正常的。这是 ASP.NET(或 IIS)在内部为优化目的所做的事情。这是要记住的关键:)
wcf - 如何处理 WCF REST 服务中的压缩请求
我们在带有 .NET Framework 4.5 的 IIS 7 上托管了 WCF REST 服务。客户端正在发送带有请求标头的 GZip 压缩格式的数据:
但是如果请求是压缩格式的,我们会收到来自服务器的错误请求。我们通过实现将过滤/修改传入请求的 IHttpModule 启用请求压缩。据我了解,这是失败的,因为 WCF 使用原始内容长度(压缩数据的长度)而不是解压缩数据。所以这是我的问题:
有什么方法可以解决 IIS7/.NET 4.5 中的内容长度问题?我的 HTTP 模块实现如下:
如果在服务器端无法修复内容长度问题,有什么方法可以从客户端发送带有压缩请求的原始内容长度?客户端实现如下:
c# - HttpModule - 需要在 OnError 命中时将用户重定向到特定页面
这是我第一次使用 HttpModules。我需要在现有的 ASP.NET 应用程序中创建一种“拖放”解决方案,通过将用户重定向到新的“ ErrorFeedback.aspx
”页面来提供常见的错误处理。因此,当应用程序遇到异常时,用户将被重定向到ErrorFeedback.aspx
他们能够在需要时提供有关错误的反馈的位置。我们目前有大约 300 个网络应用程序,因此看起来最有前途的“拖放”解决方案是HttpModule
. 此 ErrorFeedback 页面将是一个新页面,也将添加到解决方案中。最终这些组件(DLL 和自定义网页)将在 Nuget 包中结束,但暂时需要手动将其复制/粘贴到现有解决方案中。
我听说在模块内进行重定向是不好的做法。OnError
遇到时将用户重定向到特定页面的最佳做法HttpModule
是什么?
asp.net - 阻止查看 asp.net 网站的 robots.txt 文件
如果有人键入http://somewebsite.com/robots.txt,他们将能够查看文件的内容。这将使黑客占上风。
我做了一些研究,发现 Apache 有一个解决方案。有没有人见过这个 asp.net 应用程序?
asp.net - 为 JS/CSS/Images 执行 HttpModule
问题:为 JS/CSS/Images 执行 HttpModule。
以下是当前配置/设置:
基础设施:
Microsoft Windows Server 2003 R2、企业版、Service Pack 2 上的 IIS 6.0
IIS VD 设置:
通配符应用程序映射到 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll 未选中“验证该文件是否存在”
技术:
.NET 框架 4.0 + ASP.NET + ASP .NET Web API
Web.config 配置:
谢谢,阿米特
c# - 将 javascript 添加到 DNN 的 httpmodule 中
我在 DotNetNuke 中有 httpmodule。如何将 javascript 文件添加到此 httpmodule?
我试过这个,但没有奏效:
并使用此代码(在另一个模块中工作)但它也不起作用: