我想用txt文件和html页面回复http请求。通过这种方式,客户端可以保存文件,并通过html页面查看该文件内容的摘要。

由于文件是动态生成的,我必须在服务器上使用状态管理来生成第二个请求的摘要。我想避免这种情况,并将其包装在一个响应中。

自定义ActionResult会是什么样的?

有帮助吗?

解决方案

这是关于SO的

我是这样回答的:

  

不,多部分附件   下载(如在电子邮件中)不是   出于安全原因支持。它的   称为“偷渡式下载”。

     

请注意,Gmail会处理此问题   动态压缩文件。您   也应该。    http://forums.asp.net/t/1240811.aspx

我不相信任何现代浏览器都支持multipart / mixed。

其他提示

您可以参考XSLT样式表发送XML。浏览器可以进行转换并显示生成的HTML输出。

并且用户可以简单地做“文件 - >另存为...”。存储XML文件。

为什么不将摘要呈现为普通HTML视图,并在该摘要下提供指向返回二进制数据的单独ActionResult的链接...

public ActionResult SendFile(int id)
    {
        File file = FileRepository.GetFile(id);
        byte[] fileData = file.FileData.ToArray();
        return File(fileData, file.FileMimeType, file.FileName);
    }

我对这个话题进行了一些搜索,令我惊讶的是,人们似乎已经这样做了。我在这里找到了一个说明,但它没有公开测试URI,所以我无法在此测试浏览器行为。它还提到了将归档文件发送到客户端的解决方案。但我认为这不是你想要的,对吗?

此处是另一篇展示多部分示例的文章响应。遗憾的是,演示URI似乎不再起作用了。

所以情况是这样的:可以完成HTTP多部分响应。有一些客户端(很少)库来处理应用程序代码中的那些库。浏览器行为将进行测试(这是一个声音)。使用此功能似乎是实验性的,可能只建议您可以控制通信的两端以消除互操作性问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top