發送JSON和HTML頁面在一起我送我的HTML文件發送至客戶端的node.js如下圖所示在node.js中
app.get('/get', function(req, res) {
res.render(index.html);
});
這裏的index.html指JSON文件。 我怎麼能一起同時發送或引用在客戶端的JSON文件?
發送JSON和HTML頁面在一起我送我的HTML文件發送至客戶端的node.js如下圖所示在node.js中
app.get('/get', function(req, res) {
res.render(index.html);
});
這裏的index.html指JSON文件。 我怎麼能一起同時發送或引用在客戶端的JSON文件?
如果你不想從客戶端請求的JSON文件,你可以做以下一個獨立的HTTP請求:
全部服務器端渲染:
使用模板技術像moustache或handlebars,並嘗試呈現與響應的數據在線。例如,如果你的JSON文件返回名稱和地址的index.html可能看起來像:
<div>
<span>Name: {{name}} </span>
<address>Address: {{address}} </span>
<div>
然後渲染,你可以通過與性能name
和address
到模板JS對象時,你不會需要單獨詢問JSON文件。這個例子遵循鬍鬚準則,以防萬一我不夠明確。
嵌入對象
像以前的解決方案,但不太優雅一點,你可以添加完整的JSON響應與腳本標籤中的一個對象,然後用它,但是你認爲合適的。嘗試塊追加到這樣的index.html
他HEAD:
<script>
var myObject = <contents of your JSON object>
</script>
其他可能的解決方案的另一種回答剛纔描述。
我希望這會有所幫助。
HTTP一次只能發送一個資源。如果您的頁面正在請求JSON文件,則需要將其作爲第二個請求提供。
另外,也可以使一個<script>
塊,有一個變量賦值有一個值的JSON編碼的數據的HTML。
無法發送兩種類型的文件早在一個請求,但你可以做任何Ajax調用的HTML來得到你需要的JSON:
<script type="text/javascript">
var json_data;
$.getJSON("URL_HERE", function(data) { json_data = data; });
</script>
或JSON添加到HTML作爲通過模板發動機javascript對象(如下所示玉):
script(type="text/javascript").
var json_data = #{ JSON.stringify(JSON_OBJECT_HERE) }