2010-02-18 120 views
1

創建與服務器上的文件的直接鏈接,以及執行諸如從位置讀取文件並設置內容類型標題然後流式傳回數據。直接下載文件vs讀取文件作爲下載

我很好奇,因爲我有一個網絡服務器,我正在使用下載應用程序黑莓,如果我創建一個文件,並有一個直接鏈接到該文件的作品,但如果我使用網頁流回它它不起作用。手機獲取文件,但不起作用。

注意事項:

那麼爲什麼手機更喜歡一個文件,它實際上是一個直接鏈接,一個是控制器在數據傳輸和url相同時將數據傳回的控制器。

回答

0

我發現了這個問題的一個修復,雖然我仍然不確定是什麼原因造成的。我一直通過短信/電子郵件網關傳送到手機的鏈接。當手機獲得短信,我選擇鏈接下載時,它會詢問我是否想讓傑德得到肯定答案,然後顯示並退出。我把另一頁上的完全相同的鏈接作爲html鏈接併發送指向該頁面的短信。該網站引發錯誤...所以我複製並粘貼到手機瀏覽器的鏈接,頁面顯示正常,我點擊頁面上的jad下載鏈接,現在jad工作正常。

所以我想兩件事情要麼有某種安全機制,可以防止短信中的直接鏈接(但這已經適用於其他文件)或手機獲取網址的方式是不同的。

我跑了一些測試,發現別的東西,在一個頁面上接受一個id值(http://site.com/download/145)其中145是一個文件的id,如果你在手機瀏覽器中的鏈接工作正常,你下載文件。如果你用短信發送它,那麼服務器錯誤地指出該id預計是一個浮點數,並且它收到一個字符串。那麼爲什麼當手機直接從短信鏈接的url參數是字符串,但在瀏覽器中使用時,實際上被解析爲一個浮點數?

對不起,長時間囉嗦的解釋,但這是一個奇怪的問題。

0

.JAD文件只是下載的第一部分 - 還有與之相關的.COD文件(在JAD中引用)。你確定你的「流式傳輸」方法是否正確地發送了正確的MIME類型的COD文件?

+0

電話總是會讀取一個jad,然後向您顯示它首先包含的信息,並詢問您是否要繼續下載該鱈魚。在這種情況下,jad信息會在返回前一個屏幕之前顯示一秒。 – TripWired 2010-02-18 21:35:14