2012-10-04 26 views
4

我正在使用金字塔web框架來構建網站。我不斷收到在Chrome控制檯這樣的警告:如何設置內容類型標題以響應Pyramid web框架中的特定文件類型

資源解釋爲字體但MIME類型應用程序/八位字節流傳輸:「HTTP:靜態/圖像/字體/ font.woff」。

如何擺脫此警告訊息?

我已經配置使用add_static_view

我可以想辦法在.woff增加對反應來檢查,如果路徑結束用戶功能和響應頭設置爲application/x-font-woff做到這一點送達靜態文件。但它看起來不是一個乾淨的解決方案。有沒有辦法告訴金字塔通過一些設置做到這一點。

回答

6

金字塔使用標準mimetypes module來根據擴展名猜測MIME類型。它要求:

mimetypes.guess_type(path, strict=False) 

模塊看起來在Windows註冊表中,如果在該平臺上,並在以下位置的MIME類型列表:

knownfiles = [ 
    "/etc/mime.types", 
    "/etc/httpd/mime.types",     # Mac OS X 
    "/etc/httpd/conf/mime.types",    # Apache 
    "/etc/apache/mime.types",     # Apache 1 
    "/etc/apache2/mime.types",     # Apache 2 
    "/usr/local/etc/httpd/conf/mime.types", 
    "/usr/local/lib/netscape/mime.types", 
    "/usr/local/etc/httpd/conf/mime.types",  # Apache 1.2 
    "/usr/local/etc/mime.types",    # Apache 1.3 
    ] 

您可以擴展這些文件中的一個,或創建自己的文件並使用.init()函數將其添加到模塊。

的文件格式非常簡單,只列出的MIME類型,然後一些空格,然後擴展名的空格分隔的列表:

application/x-font-woff  woff 
1

只需添加這下面的代碼,你的金字塔的Web應用程序被初始化。

import mimetypes mimetypes.add_type('application/x-font-woff', '.woff')

舉例來說,我在webapp.py文件,該文件被稱爲第一時間服務器獲取與請求命中添加它。

+0

這個答案可以使用一些解釋來說明這個代碼在哪裏以及它的作用。 –

相關問題