加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何强制IIS托管的WCF或ASMX [webservice]只读取会话对象?

发布时间:2020-12-16 21:38:03 所属栏目:安全 来源:网络整理
导读:在进行我的第一次ajax尝试时,我决定立即使用IIS托管的WCF.奇怪的是,如果启用了sessionmode,WCF无法为同一个用户/会话并行处理多个请求!如果在asp.net上禁用sessionmode,则会并行处理请求.更明亮/客户端可以执行几个不同的请求,其中一些请求长时间运行.这将
在进行我的第一次ajax尝试时,我决定立即使用IIS托管的WCF.奇怪的是,如果启用了sessionmode,WCF无法为同一个用户/会话并行处理多个请求!如果在asp.net上禁用sessionmode,则会并行处理请求.更明亮/客户端可以执行几个不同的请求,其中一些请求长时间运行.这将阻止所有进一步的requets并使我的ajax应用程序无法使用.

这也适用于asmx [webservices].我有一个很大的希望,就是使用“IReadOnlySessionState”接口编译webservice方法,但是这对于网页的反对 – 没有影响.但我需要[大多数时候只读取]访问asp.net会话!

有人知道这个问题的任何解决方案.

无论如何,非常感谢!

BR – mabra

解决方法

在.NET 4中,您可以在Application_BeginRequest中执行此操作

if (Context.Request.Path.EndsWith("xxx.svc"))
   Context.SetSessionStateBehavior(SessionStateBehavior.ReadOnly);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读