asp.net – 下载文件时ASP.MVC会话丢失
发布时间:2020-12-16 03:29:00 所属栏目:asp.Net 来源:网络整理
导读:我有一个下载页面,其中包含指向本地存储在Web服务器上的文件的链接.当用户打开文本文件时,一切都很好,但当他们打开Office文件并从IE或Firefox中生成的对话框中选择“打开”时,ASP会创建一个新会话. 我简化的控制器方法是: HttpGet()AppAuthorize(Domain.Sec
我有一个下载页面,其中包含指向本地存储在Web服务器上的文件的链接.当用户打开文本文件时,一切都很好,但当他们打开Office文件并从IE或Firefox中生成的对话框中选择“打开”时,ASP会创建一个新会话.
我简化的控制器方法是: <HttpGet()> <AppAuthorize(Domain.Security.TransactionId.Download)> Public Function Download(fileName As String) As ActionResult ' fileName example: C:ProgramDataMyCompanyMyAppSomeFile.txt Return New FilePathResult(fileName,"application/octet-stream") End Function 调试显示,只要在浏览器中单击“打开”,就会触发Global.asax Session_Start()事件. 如果保存文件,然后在IE中查看它,则不会创建新会话.如果单击上图中的“打开”按钮,则只会出现问题. 为什么这样,我该如何预防呢? 核心问题是当我的应用程序看到新会话启动且用户具有有效的表单身份验证cookie时,它会假定IIS已重新启动并删除用户的cookie.因此,每次用户打开Word文档时,他们都会从应用程序中注销. 解决方法
在Internet Explorer中单击DOC链接时,会将其移交给Word.这意味着Word会进行下载,而不是IE.因此,有一个新的“浏览器连接”,将创建一个新的会话,因为它实际上不是IE正在进行下载.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 建立与SQL Server的连接时发生网络相关或特
- asp.net-mvc – 如何编辑表格数据(ASP MVC)
- asp.net – 来自TextBox的ActionLink routeValue
- asp.net-mvc – ASP.NET MVC Beta授权属性发送给我错误的动
- asp.net-mvc-5 – 如何检查用户是否从MVC5布局文件登录
- 页面存在时的404 – IIS 5,ASP.NET 4.0
- asp.net-mvc-2 – 带有数组/列表的ASP.NET MVC 2模型
- 如何在ASP.NET Core自定义中间件中读取Request.Body和Respo
- ASP.NET – Ajax Calendar Extender CSS继承自表
- 调试 ASP.NET Core 2.0 源代码
推荐文章
站长推荐
- asp.net-mvc – 如何成功配置Common.Logging?
- asp.net – 如何在listview上执行不受控件约束的
- asp.net – 如果禁用ViewState会发生什么
- asp.net-mvc – asp.net MVC OutputCache属性的默
- 什么是IIS和Asp.Net中的应用程序池?
- 如何识别ASP.NET Web表单和ASP.NET MVC网站?
- .Net Core微服务入门全纪录(三)——Consul-服务
- asp.net-mvc – 如何修复System.Net.Sockets.Soc
- asp.net – ADO.NET TableAdapter参数
- Asp.net mvc 知多少(九)
热点阅读