2012-10-17 59 views
1

我曾經聲明我用下面的代碼靜態ressources在我玩1.2.5模板:如何處理Play框架中缺少的靜態文件?

<img src="@{'/public/images/team/myTeam.png'}"/> 

我的問題是指定的文件丟失時,認爲崩潰......我怎麼能避免這個問題?我寧願顯示缺少圖像的視圖,而不是視圖!

我的背景:我在Google App Engine上使用Play 1.2.5。

回答

0

雖然它不是一個直接的答案,但它可能會幫助你。

一般來說,我會建議從應用程序到一些CDN(我不知道谷歌的引擎,但快速搜索顯示我,人們這樣做)刪除公共靜態資源,這要歸功於此,您將避免顯示錯誤頁。 (nota bene顯示丟失文件的自定義錯誤頁是沒有意義的,因爲您不單獨顯示圖像,但使用<img>標籤)

此外,CDN會爲您提供更多的利潤,例如在距離客戶端更近的位置緩存文件,來自另一個域的CDN的文件,瀏覽器不會發送完整的冗餘內容,比如cookies等。最後,您可以替換資源而無需重新部署應用程序。

+0

謝謝biesor,的確有幫助。你有關於免費CDN的建議嗎?我們是一個非盈利組織,可惜我們買不起Akamai公司的服務:( – Zakapatul

+0

不幸,幸運的是我沒有這樣的問題,首先,最便宜的選擇,只需要一些便宜的主機來存儲文件,我認爲,我們可以找到每年少於50美元的選項,但不是真正的CDN,當然,還有其他CDN提供商,如亞馬遜,谷歌,微軟等,雖然它們不是免費的,但它們提供每個使用GB的價格和免費的測試周期 – biesior

+0

BTW:稍微搜索一下網站,有一些關於如何使用谷歌App Engine作爲幾乎免費的CDN的描述 - 它們從相當高的水平開始計算,所以也許你可以完全使用它免費的,如果你準備好文件 – biesior

0

<img>是一個HTML標記,並具有alt屬性,當圖像不可用時,該屬性可用於顯示而不是圖像。此外,如果您在調試模式下工作,您可能會看到由播放框架生成的錯誤頁面。嘗試切換到prod模式並檢查結果

+0

您好Alpay,我的問題中提供的代碼只是爲了說明我的問題,我已經在我的應用程序中使用了alt屬性:)事實是,當缺少資源時,錯誤頁面即使在prod模式下也顯示! – Zakapatul