2016-12-17 5 views
0

私は動的に3つのhtmlファイルをロードしようとしています:header.htmlsearch.htmlfooter.htmlノードJSサーバがフリーズ動的

を私はviewディレクトリ内のhtmlファイルを読み込むrender.jsファイルを持っています。

var fs = require('fs'); 

function view(templateName, values, response) { 
    var content = fs.readFileSync('./views/' + templateName + '.html'); 

    response.write(content); 
} 

module.exports.view = view; 

、その後、私はrouter.js私はviewメソッドを経由してhtmlファイルを呼び出していますに

var Profile = require("./profile"); 
var render = require('./render'); 

function home(request, response) { 
    if(request.url === '/') { 
     response.writeHead(200, {'Content-Type': 'text/plain'}); 
     render.view('header', {}, response); 
     render.view('search', {}, response); 
     render.view('footer', {}, response); 
    } 
} 

これは、サーバーを開始app.jsという問題がある

var http = require('http'); 
var router = require('./router'); 

http.createServer(function(request, response) { 
    router.home(request, response); 
    router.user(request, response); 
}).listen(3000); 
console.log('Server is running at localhost:3000'); 

、ノードJSサーバーがフリーズしていて、devのNetworkタブに表示されている場合は、ステータス列にpendingと表示されます。

これは私がページに表示されるエラーです。 localhostのページが

が動作していない

が突然接続を閉じlocalhostを。

私は、ページのロード罰金通常response.end('Footer');footerで最後render.view行を置き換える場合は、しかし、

ERR_INCOMPLETE_CHUNKED_ENCODING。私はheader.htmlsearch.htmlのhtmlコンテンツを見ることができ、最後にはFooterという単語を見ることができます。

3行目を完全に削除すると、ページがまったく読み込まれず、最初のエラーに戻ります。私はちょうど1行でそれを試しても、それも凍結する。

これを引き起こす原因は考えられません。

htmlファイルは、これはこれはsearch.html

<img src="../../assets/img/search.png" alt="Magnifying Glass" id="searchIcon"> 

<form action="/" method="POST"> 
    <input type="text" placeholder="Enter a Treehouse username" id="username" name="username"> 
    <input type="submit" value="search" class="button"> 
</form> 

これはただでResponse.Endの() を追加footer.html

</body> 
</html> 

答えて

1

であるheader.html

<!DOCTYPE html> 
<html> 

<head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
    <title>Treehouse Profile</title> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="../../assets/css/teamtreehouse.css"> 
</head> 
<body> 

で、かなり単純です終わり