我似乎永远无法在.net上找到任何文档,官方版本(当它们是正确的时候)是一个毫无希望的迷宫。
我使用jQuery将用户重定向到新页面上的HttpHandler,我在其中构建并发送html表(并将其称为excel文件)。由于堆叠器,我可以毫不拖延地构建和发送文件(即使是很大的文件)。
我想在新页面上告诉用户我正在构建文件等,因为正在构建和发送文件。
当我在发送excel标题之前执行context.response.write时,我得到:
Server Error in '/' Application. Server cannot append header after HTTP headers have been sent.
有没有办法达到我想要的目的?
非常感谢提前!
答案 0 :(得分:0)
你到底想要达到什么目的?据我所知,你正在构建某种excel表并将其发送给客户。我假设客户端将您的内容识别为Excel工作表,您尝试发送一些响应头(例如mime类型)。
虽然您必须始终在正文之前发送任何类型的标题,但您将无法在向用户显示的响应流中写入通知,因为用户还将保存您对excel文件的通知。
所以我认为你需要一个新的登陆页面,上面会有一个通知,还有一些javascript或元重定向(或者是超链接或按钮),它会强制创建和下载excel。
答案 1 :(得分:0)
您需要的是一个临时目标网页,可以重定向到下载页面。
在临时页面上,您可以获得消息和一个小脚本,以便将用户发送到下载。
<body>
<div> Your file is getting created... Please wait patiently.
</div>
<script>
window.location.href = 'http://yoursite.com/documentpage/blah/foo/bar';
</script>
</body>