我正在編寫一個應用程序來編輯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