當我加載一個靜態 html頁面我想發送一個JS Object
到該頁面(這是來自mongo的數據)。我可以用Socket
emit
來完成這個,但這看起來像是過度殺傷。我也知道我可以用編寫整個文檔使用JS,但我想利用HTML的大部分頁面,因爲它使我工作的人更容易。節點加載js上createServer
這將是不錯如果我可以注入html到我的靜態頁面之前它被髮送出去的服務器,但我不認爲這是可能的。我會解決一個HTML頁面,具有解析發送到頁面的數據在「加載」時間等功能。
我目前的樣本是假或我會一起發送。 謝謝看看我的 的問題!
**當前片段,爲樂趣**
function createServer(req, res) {
var path = url.parse(req.url).pathname;
var fsCallback = function(error, data, cb) {
if(error) throw error;
res.writeHead(200);
res.write(data);
res.end();
if(cb) cb();
}
switch(path) {
case '/subpage':
case '/subpage.html':
doc = fs.readFile(__dirname + '/subpage.html', function(error, data) {
fsCallback(error, data, function() {
var db = new mongo.Db('mydb', new mongo.Server('localhost', '27017', {}), {});
db.open(function() {
db.collection('mytable', function(error, collection) {
collection.find(function (error, cursor) {
//store some data and send it to the page -- that will happen somewhere around here?
});
});
});
});
});
break;
default:
doc = fs.readFile(__dirname + '/index.html', fsCallback);
break;
}
}
非常透徹的回答。不錯的工作! – Jacksonkr
恩,是的,我有點深入,花了幾個小時充實了我對快速配置和不同模板引擎的細節細節的理解。 –