2017-03-09 6 views
0

gzippedスクリプトをロードして実行しようとしています!jQuery load gzippedスクリプト

スクリプトload.js:

load.js.gz.する7zipをしてgzipで圧縮された
$(document).ready(function() { 
    $("#ls_text").text("loaded!"); 
}); 

私のNode.jsは、ファイルサービス用のコードを表明:私は "エラーを取得していますブラウザコンソールで

$.ajax({ 
     url: '/load.js', 
     dataType: "script", 
     success: function(data, status, xhr) { 
      alert("loaded"); 
     } 
}); 

:スクリプトを取得するための

app.get('/load.js', function(req, res, next) { 
    res.set('Content-Encoding', 'gzip'); 

    var filepath = path.join(__dirname, '/public/load.js.gz'); 
    var readstream = fs.createReadStream(filepath); 

    readStream.pipe(res); 

    res.end(); 
}); 

私のjQueryのクライアントコードをERR_CONTENT_DECODING_FAILED "

私は実行時にスクリプトをgzip形式で表示させたくありません!

私は間違っていますか?

答えて

0

あなたパイプresに、res.end()呼び出すことはありません:

app.get('/load.js', function(req, res, next) { 
    res.set('Content-Encoding', 'gzip'); 

    var filepath = path.join(__dirname, '/public/load.js.gz'); 
    var readStream = fs.createReadStream(filepath); 

    readStream.pipe(res); 
}); 
+0

ありがとうございます!しかし、それは問題を解決しません! – Kian

+0

実際にファイルが実際にgzipされていますか?私は7zipが複数のフォーマットをサポートしていると信じています。 – robertklep

+0

「アーカイブに追加」ダイアログで「アーカイブフォーマット」として「gzip」を選択しました。 – Kian