我正在编写一个应用程序来编辑mp3文件。编辑完成后,我想提供一个链接来下载文件。我只是担心文件位置(如果知道)可能会被滥用于非法文件。我需要做的是,我不需要在服务器上显示指向文件的链接,而是可以将其存储在内存中(我已经使用taglib),然后将下载流传送到服务器上,而不必将其存储在服务器上。asp.net隐藏下载
1
A
回答
2
您需要使用HTTP处理程序将文件写入用户,同时屏蔽服务器上文件的真实位置。这将使您能够执行任何关于下载文件的规则,例如一次下载。
参见:How to create an HTTP Handler
处理程序中的代码必须是唯一的你的需求,而是沿着以下的说法应该有所帮助:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "Application/mp3";
context.Response.AppendHeader("Content-Disposition", "attachment; filename=mysong.mp3");
context.Response.TransmitFile(Server.MapPath("~/Files/song.mp3"));
}
你可以在情况下使用Stream你不不想在任何地方保存实际的文件,但这应该让你开始。
相关问题
- 1. 下载链接隐藏
- 2. 隐藏下载网址
- 3. php隐藏下载链接
- 4. 隐藏下载链接ASP
- 5. 隐藏加载图像在asp.net回发文件下载
- 6. ASP.net隐藏div
- 7. 隐藏在asp.net
- 8. 隐藏文件下载的物理路径在ASP.NET
- 9. Asp.net加载屏幕/隐藏表格
- 10. Asp.Net Mvc隐藏下拉列表
- 11. 隐藏/点击Asp.Net
- 12. asp.net网址隐藏?
- 13. 隐藏字段asp.net
- 14. 禁用/隐藏“下载React DevTools ...”
- 15. 隐藏正确下载按钮
- 16. 如何隐藏下载链接
- 17. 如何隐藏下载链接
- 18. <audio>隐藏下载控件
- 19. 通过php头隐藏url下载
- 20. 图像是否在隐藏时下载?
- 21. 隐藏主要下载网址
- 22. 如何隐藏用Javascript下载链接
- 23. 下载maven artifacts时隐藏HTTP密码
- 24. 隐藏下载链接10秒? js
- 25. 隐藏URL从“网络下载管理器”的眼睛下载?
- 26. 从下载管理器中隐藏下载android
- 27. 隐藏下载文件位置。 - 重定向下载
- 28. 隐藏Spinner加载
- 29. 下拉隐藏值
- 30. 在asp.net中加载页面后,不会隐藏预加载器
如何将文件存储在内存中防止链接内容被“滥用于非法文件”? –
@JonathanWood我认为这个想法是由UserA生成的内容不应该由UserB下载。 – Servy
我将问题从“是/否”改为“如何”。第一个问题的答案是“是”,我认为这不是对你的充分答案。 – Servy