我希望人們能夠點擊我的鏈接並下載我的文件。但是,當我鏈接到我的網站上的文件下載時,它只是將它們帶到該文件的代碼。我正嘗試上傳一個.cpp文件(c plus plus)。它在我的下載文件夾中,但當我鏈接到那裏時,它會顯示.cpp文件而不是下載它。你如何鏈接到一個文件,使其下載而不是在瀏覽器中呈現?
任何幫助表示讚賞。
我希望人們能夠點擊我的鏈接並下載我的文件。但是,當我鏈接到我的網站上的文件下載時,它只是將它們帶到該文件的代碼。我正嘗試上傳一個.cpp文件(c plus plus)。它在我的下載文件夾中,但當我鏈接到那裏時,它會顯示.cpp文件而不是下載它。你如何鏈接到一個文件,使其下載而不是在瀏覽器中呈現?
任何幫助表示讚賞。
這是因爲瀏覽器知道如何讀取文件 - 您可以要求頁面上的用戶右鍵單擊該鏈接,然後單擊「另存目標」,而不僅僅是鏈接。
您可以在HTTP響應中將Content-Disposition標題設置爲「attachment」。如果你讓我知道什麼服務器平臺,我會試着給出更多的細節。
(對不起,我真的不喜歡網絡開發)這是我正在嘗試做的事情。 www.zuhon.com/opentextengine在那裏,我希望你能夠點擊v.2並下載文件,而不是去該位置,並看到它的來源... – Crju
是的,內容處置是方式。您必須將鏈接指向服務器上的腳本,該腳本將返回帶有標題集的文件。看看http://stackoverflow.com/questions/8875949/how-to-implement-content-disposition-attachment [鏈接](http://stackoverflow.com/questions/8875949/how-to-implement-content -disposition-attachment),如果你在那臺主機上使用PHP的話。 – bitfiddler
您將不得不編寫一些代碼來將HTTP響應頭ContentType設置爲「application/x-force-download」。這告訴瀏覽器您真正想要的是文件下載,而不是默認操作(文件打開)。您還需要設置ContentLength標頭。這允許瀏覽器顯示進度條。
如果使用ASP.NET,也有這個目的的一些商業產品:
http://www.essentialobjects.com/Products/EOWeb/Downloader.aspx
,它基本上是上面一些額外的功能是什麼規定。
右鍵另存爲? – scaryrawr
您的標題似乎不符合您的問題文本。您是否希望瀏覽器中的用戶下載文件,而不是讓瀏覽器渲染它? – bitfiddler
(更新標題/描述根據Syd的評論給出答案) – RJFalconer