2012-05-10 35 views
0

我正在使用Microsoft.NET Framework 4學習Web應用程序。閱讀本書時,我正在編寫一個我公司希望的網站原型。我的公司向客戶出售報告。他們希望有一個網站,當客戶登錄時,他們可以查看所有購買的報告(截至目前沒有商店)。iFrame Refresh和一些設計?的

我的設計是: - 一個數據庫表,其中包含多個用戶名,報告名稱以及報告的文件路徑。 - 服務器可以訪問的文件存儲包含實際文件(PDF)。 - 一個網站,用戶登錄後將查詢數據庫,獲取屬於該用戶的所有報告行,列出它們,並有一個點擊事件,將iframes src更改爲所選報告的文件路徑。

我大部分工作。我有數據庫查詢工作,根據查詢內容填充報告圖標,以及將iFrame的src屬性更改爲文件路徑的click事件。

我沒有工作是,我無法讓iFrame顯示報告。如果我在一個包含在wesite中的文件夾中有一個報告並且硬編碼它顯示正常。如果我將硬編碼值更改爲U:\\somefolder\someusername\somereport1.pdf,它將不會顯示(U:是映射驅動器)。當我根據點擊報告圖標將源代碼更改爲U:\\somefolder\someusername\somereport2.pdf時,它絕對不起作用。

這是一個完善的設計嗎?看起來我非常接近它的工作。 當src屬性更改時,iFrame會自動刷新嗎?

任何幫助,將不勝感激, 萊昂

+0

對不起。我也不知道你在說什麼。你能澄清嗎? – lross1309

+0

我不認爲iframe出於安全原因可以顯示文件。爲什麼不直接使用url提供pdf? – Aristos

+0

Aristos,對不起,無知。我很新。 PDF將不會存儲在網站上,它們將被存儲在Web服務器也可以訪問的文件系統中。我的理解是否正確? – lross1309

回答

0

當您更改iframe的src你告訴瀏覽器去獲取任何在那個URL。由於瀏覽器無法訪問文件存儲,只能訪問Web服務器,因此無法下載文件。如果您使用瀏覽器開發工具觀看網絡流量,則每次更新iframe時都會看到404被返回。

瀏覽器要麼需要直接訪問PDF的位置,雖然這沒有安全性,或者網站必須代理它們,以便首先檢查用戶權限。

+0

感謝輸入roryf :) 你能指點我一些關於如何使用這樣的代理網站的材料?我很新,這似乎是相當先進的:) – lross1309