簡體   English   中英

如何使我的Rails應用針對因錯誤而無法編譯的資產返回500狀態?

[英]How can I make my Rails app return a 500 status for assets that do not compile due to an error?

我希望能夠編寫一個測試來確保我的SCSS資產之一可以成功編譯,但是要通過匹配響應主體來可靠地做到這一點是很困難的。 我只希望能夠在訪問資產的URL時檢查響應代碼,但是即使對於有錯誤編譯的資產,我的應用似乎也能成功返回200狀態代碼。 觀察:

$ curl -i http://domain/assets/my_asset.css

HTTP/1.1 200 OK
Content-Type: text/css;charset=utf-8
Content-Length: 1153

但是,我的日志清楚地表明資產無法編譯為OK:

Error compiling asset my_asset.css:
Sass::SyntaxError: Undefined variable: "$var".
Served asset /my_asset.css - 500 Internal Server Error

而且資產主體確實包含錯誤消息,因此我知道它正在提供“不良”資產,但是狀態代碼不能反映這一點。

在這種情況下,有什么方法可以使我的應用返回500?

Curl用於從服務器傳輸數據或向服務器傳輸數據。 如果存在相同文件的先前版本,則僅獲取數據。

如果您想知道資產新版本的狀態,然后為創建的資產添加唯一標識,或者必須在創建新編譯之前刪除前一個資產(並確保相同服務器的緩存已過期)資產)。

希望這可以幫助。

問候,HBK

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM