2017-10-12 89 views
0

我正在嘗試使用節點/快遞爲反應應用程序提供gzip壓縮文件,但我不斷收到1.2MB的大文件而不是gzip的300kb文件。下面是我使用Gzip文件沒有與節點快遞服務

router.get('/javascripts/bundle.js', function (req, res, next) { 
    console.log('ENVIRONMENT') 
    console.log(process.env.NODE_ENV); 
    if (process.env.NODE_ENV === 'production') { 
    req.url = req.url + '.gz'; 
    res.set('Content-Encoding', 'gzip'); 
    res.set('Content-Type', 'text/javascript'); 
    console.log('request URL: ' + req.url); 
    } 
    next(); 
}); 

我檢查,以確保環境的生產,但沒有這些日誌都出現在我的服務器日誌(Heroku的日誌)達快遞路由處理。並在鉻看網絡標籤它顯示1.2MB

有什麼我失蹤?

+0

請張貼的響應代碼爲良好眼前這個中間件 –

+0

@JLivengood我沒有爲bundle.js文件的任何特定響應代碼,也許這是我的問題?我跟着一個教程,它只是說要添加中間件 –

+0

哦,不,只要確保,我可能有一個解決方案。在本地測試 –

回答

1

也許在另一個模塊(如app.js)中,您正在使用表達式的靜態中間件,它可以在請求到達您的定製中間件之前捕獲該請求。 檢查並註釋掉(如果你能)

app.use(express.static(path.join(__dirname, 'public'))); 
相關問題